Select-Abfrage
Hugo
- php
0 Cheatah0 Andavos0 Vinzenz Mai0 Hugo
Hallo
Kannn ich eine Select-abfrage in PHP irgendwie so machen, daß er nur die Zeilen auswählt, bei denen mehrere Datenbankinhalte stimmen.
Ich hätte das so gemacht, aber das geht nicht:
$abfrage = mysql_query("SELECT * FROM bestand WHERE a = '$name' AND b = '$größe' AND c = '$farbe' ");
Hi,
Ich hätte das so gemacht, aber das geht nicht:
"geht nicht" ist keine Fehlerbeschreibung, und SQL-Probleme haben exakt gar nichts mit PHP zu tun. Wir kennen beispielsweise nicht mal das SQL-Statement, dass Du abgesendet hast.
Cheatah
Hallo,
eigentlich geht das, sonst nach dem query:
echo mysql_error(); damit bekommst du die Fehlermeldung.
Aber in Variablen Namen sollte man keine SOnderzeichen & Umlaute benutzen, also evt. die Variable: $größe umbenennen
Hallo Andavos
Aber in Variablen Namen sollte man keine SOnderzeichen & Umlaute benutzen, also evt. die Variable: $größe umbenennen
Laut <http://www.php.net/manual/de/language.variables.php@PHP-Handbuch, Abschnitt Variablen> sollte dies kein Problem darstellen, siehe insbesondere das letzte Beispiel im Kasten unter Anmerkung. Dennoch verzichte ich auf deutsche Sonderzeichen in Variablennamen.
Viel interessanter ist jedoch, wie die Abfrage tatsächlich lautet, siehe Cheatahs Posting.
Freundliche Grüße
Vinzenz
Hallo
Mein Problem ist, daß er irgendwie die AND-Verknüpfung ignoriert, da die Abfrage immer mehrere Übereinstimmungen findet, obwohl diese in meiner Datenbank nicht vorkommen.
Hallo Hugo
Mein Problem ist, daß er irgendwie die AND-Verknüpfung ignoriert, da die Abfrage immer mehrere Übereinstimmungen findet, obwohl diese in meiner Datenbank nicht vorkommen.
Es ist eine gute Idee, das SQL-Statement in einer eigenen Variablen zusammenzustellen. Diese Variable kann man zu Debug-Zwecken ausgeben.
Ein Ansatz wäre z.B:
$strSQL = "SELECT * FROM bestand WHERE a = '$name' AND b = '$größe' AND c = '$farbe' ";
echo $strSQL; // zur Debug-Ausgabe
$result = mysql_query($strSQL)
or die ("SQL-Anweisung: $strSQL<br>" . mysql_error());
Freundliche Grüße
Vinzenz