Hallo Leute hänge schon seit 2 Tagen an nem Problem.
Habe 2 Tabellen:
Artikel:
artikel_id
fabrikat_id
artikel_name
Fabrikate:
fabrikat_id
fabrikat
Nun gibt es ein Suchformular wo man mit Leerzeichen getrennt Suchbegriffe eingeben kann:
Ist ein bischen schwer zu erklären das Problem.
mysql_num_rows wirft mehr Treffer aus wenn ich nach farbrikat suche als nach Artikel_Name.
Das Ergebnis wenn ich nach artikel_name suche stimmt.
Nur der Treffer mit fabrikat nicht.
Da findet er was obwohl nichts das ist.
Habt Ihr vielleicht ne Idee?
Habe 2 Tabellen:
Artikel:
artikel_id
fabrikat_id
artikel_name
Fabrikate:
fabrikat_id
fabrikat
Nun gibt es ein Suchformular wo man mit Leerzeichen getrennt Suchbegriffe eingeben kann:
PHP:
$suchbegriffe = explode(' ',$_POST['suchbegriff']);
$anzahlsuchbegriffe = count($suchbegriffe);
$sql = '';
$sql = 'SELECT * FROM '.$preffix.'_artikel ';
for($z=0; $z<=$anzahlsuchbegriffe; $z++)
{
// Zeile auslassen, wenn Leereintrag da ist
if(empty($suchbegriffe[$z]))
{
continue;
}
if($z == 0)
{
$sql .= 'INNER JOIN '.$preffix.'_fabrikate ON '.$preffix.'_artikel.fabrikat_id='.$preffix.'_fabrikate.fabrikat_id WHERE fabrikat = "'.$suchbegriffe[$z].'" OR artikel_name LIKE "%'.$suchbegriffe[$z].'%" ';
}
elseif($z <= $anzahlsuchbegriffe)
{
$sql .= 'AND fabrikat="'.$suchbegriffe[$z].'" OR artikel_name LIKE "%'.$suchbegriffe[$z].'%" ';
}
}
Ist ein bischen schwer zu erklären das Problem.
mysql_num_rows wirft mehr Treffer aus wenn ich nach farbrikat suche als nach Artikel_Name.
Das Ergebnis wenn ich nach artikel_name suche stimmt.
Nur der Treffer mit fabrikat nicht.
Da findet er was obwohl nichts das ist.
Habt Ihr vielleicht ne Idee?