Hi Leutz,
ich habe folgende Query...
...zu folgende Query umgewandelt, also per IF-Bedingung zerteilt und aus dem LIKE ein = gemacht:
Die Suche und die Ergebnisse funktioniert bzw. passen alle einwandfrei. Blos erhalte ich seit der neuen Query permanent folgende Fehlermeldung, wenn ich ausschließlich das Feld Brand für die Suche benutze. Die Ergebnisse zeigt er mir jedoch richtig an:
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in /Applications/XAMPP/xamppfiles/htdocs/search.html on line 127
Zeile 127 sieht so aus: $anzahl = mysql_num_rows($result);
Es wird sich mit Sicherheit um eine Klammer zu viel oder zu wenig handeln. Ich habe jetzt ca. 2 Stunden damit verbracht die Blöde Meldung zu bereinigen...allerdings ohne Erfolg, wie man sieht. Ich Bitte um Eure Hilfe, woran das liegen könnte.
...Und so sieht mein ECHO aus: SELECT DISTINCT * FROM Tabelle WHERE Brand = 'adidas' LIMIT 0,10
ich habe folgende Query...
PHP:
$suchwort_array = explode(" ", $suchwort);
$query = 'SELECT DISTINCT * FROM Tabelle WHERE ';
for($i=0; $i < count($suchwort_array); $i++)
{
$query .= "(MATCH (Title,ShortDescription,LongDescription,Category,Brand) AGAINST('%" . mysql_real_escape_string($suchwort_array[$i]) . "%') AND Brand LIKE '%" . mysql_real_escape_string($brand) . "%')";
if($i<count($suchwort_array)-1)
{
$query .= ' and ';
}
}
$result = mysql_query($query);
...zu folgende Query umgewandelt, also per IF-Bedingung zerteilt und aus dem LIKE ein = gemacht:
PHP:
$suchwort_array = explode(" ", $suchwort);
$query = 'SELECT DISTINCT * FROM Tabelle WHERE ';
for($i=0; $i < count($suchwort_array); $i++)
{
$query .= "MATCH (Title,ShortDescription,LongDescription,Category,Brand) AGAINST('%" . mysql_real_escape_string($suchwort_array[$i]) . "%')";
if($i<count($suchwort_array)-1)
{
$query .= ' and ';
}
}
if ($brand)
{
if ($suchwort) $query .= " AND";
$query .= " Brand = '" . mysql_real_escape_string($brand) . "'";
}
$result = mysql_query($query);
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in /Applications/XAMPP/xamppfiles/htdocs/search.html on line 127
Zeile 127 sieht so aus: $anzahl = mysql_num_rows($result);
Es wird sich mit Sicherheit um eine Klammer zu viel oder zu wenig handeln. Ich habe jetzt ca. 2 Stunden damit verbracht die Blöde Meldung zu bereinigen...allerdings ohne Erfolg, wie man sieht. Ich Bitte um Eure Hilfe, woran das liegen könnte.
...Und so sieht mein ECHO aus: SELECT DISTINCT * FROM Tabelle WHERE Brand = 'adidas' LIMIT 0,10