Ich möchte per Suchfeld, Daten aus der Datenbank abrufen. Jedoch sehe erscheint nichts. Kann mir jemand helfen?

...komplette Frage anzeigen

1 Antwort

  1. Der obere Teil deines Codes ist nicht sichtbar. Bitte poste alles nochmals auf http://pastebin.com/.
  2. Externe Daten solltest du nie ungefiltert weiterverarbeiten, vor allem nicht innerhalb einer Datenbankanfrage. Also nutze die Filterfunktionen von PHP (mysqli_real_escape_stringhttp://php.net/manual/de/ref.filter.php).
  3. Alle Daten die du aus der Datenbank ausliest, beziehst du aus der selben Tabelle mit dem selben Filter. Das ist unnötiger Ressourcenverbrauch. Fasse diese Anfragen also zu einem Query zusammen und lies dann den ResultSet aus.
  4. Setze den Wert der WHERE-Klausel in Anführungszeichen (WHERE name='$name')
  5. Prüfe mit print_r, was in den jeweiligen ResultSets überhaupt drinsteht und führe auch einmal testweise auf der Datenbank den konkreten SQL Query aus. Lasse dir zudem deinen SQL Query einmal ausgeben, bevor du ihn ausführst.
Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Netizen78
06.03.2017, 20:38

Sehr gute Hinweise. Insbesondere der zweite Punkt ist nicht zu unterschätzen, Stichwort SQL Injection. Unsicherer Code wie der oben öffnet Angreifern Tür und Tor. Neben den erwähnten Filterfunktionen wären auch Prepared Statements eine Alternative, wenn auch ein wenig komplexer zu programmieren.

0

Was möchtest Du wissen?