philip.p: DB-Abfrage: WHERE mit mehreren optionalen Parametern

Beitrag lesen

Also wenn ich mir das jetzt zusammenstückle, dann liefert mir das diesen Fehler:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource

Der Code dazu sähe so aus:

      if($kapa_anzahl  != "") { $select_anzahl[] = "kapazitaet = " . mysql_real_escape_string($kapa_anzahl); }  
      if($herst_anzahl != "") { $select_anzahl[] = "hersteller = '" . mysql_real_escape_string($herst_anzahl) . "'"; }  
      if($preis_anzahl != "") { $select_anzahl[] = "preis <= " . mysql_real_escape_string($preis_anzahl); }  
  
      $result = "SELECT * FROM sticks";  
      if($kapa_anzahl  != "" || $herst_anzahl  != "" || $preis_anzahl  != "")  
      {  
        $result .= " WHERE ";  
        $result .= implode(" AND ", $select_anzahl);  
      }  
  
      $result = mysql_num_rows($result);

Wenn ich mir aber $result mit echo ausgebe, ist dort eigentlich alles korrekt zusammengesetzt: SELECT * FROM sticks WHERE kapazitaet = 4 AND hersteller = 'Intenso' AND preis <= 35