Hugo: Select-Abfrage

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' ");

  1. 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

    --
    X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
  2. 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

    1. 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

      1. 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.

        1. 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