Hallo Leute,
schon wieder mal ich...
Ich habe ein Diskussionsforum programmiert und hab eine Suchfunktion durch alle Beiträge integriert. (sind in einer DB gespiechert) Wenn jetzt in einem Thread bei mehreren Posts derselbe Suchbegriff zutrifft, liefert mir die mysql Abfrage immer mehrere gleiche Treffer, wie kann ich das verhindern?
Also bsp:
$suchen = mysql_query("SELECT threadid, thema FROM $table2 WHERE kommentar LIKE '%$suchbegriff%'");
$suchennum = mysql_num_rows($suchen);
for($i = 0;$i <= $suchennum; $i++) {
$row = mysql_fetch_array($suchen);
echo " <tr>\n";
echo " <td><p align=\"center\"><a href=\"showthread.php3?id=".$row[threadid]."\">".$row[thema]."</td>\n";
echo " </tr>\n";
}
nehmen wir an in einem thread kommt in zwei posts das wort 'Himmel' vor. Wenn der Suchbegriff jetzt Himmel lautet bekomm ich als ergebnis zweimal den Thread geliefert, samt link darunter. Ist mir ja klar warum, weil die Abfrage eben zwei Results findet wo die LIKE bedinugng erfüllt ist. Was muss ich mahcen damit er mir jeden Thread nur maximal einmal liefert, auch wenn dort zweimal 'Himmel' vorkommt. DANKE EUCH!
Andi
schon wieder mal ich...
Ich habe ein Diskussionsforum programmiert und hab eine Suchfunktion durch alle Beiträge integriert. (sind in einer DB gespiechert) Wenn jetzt in einem Thread bei mehreren Posts derselbe Suchbegriff zutrifft, liefert mir die mysql Abfrage immer mehrere gleiche Treffer, wie kann ich das verhindern?
Also bsp:
$suchen = mysql_query("SELECT threadid, thema FROM $table2 WHERE kommentar LIKE '%$suchbegriff%'");
$suchennum = mysql_num_rows($suchen);
for($i = 0;$i <= $suchennum; $i++) {
$row = mysql_fetch_array($suchen);
echo " <tr>\n";
echo " <td><p align=\"center\"><a href=\"showthread.php3?id=".$row[threadid]."\">".$row[thema]."</td>\n";
echo " </tr>\n";
}
nehmen wir an in einem thread kommt in zwei posts das wort 'Himmel' vor. Wenn der Suchbegriff jetzt Himmel lautet bekomm ich als ergebnis zweimal den Thread geliefert, samt link darunter. Ist mir ja klar warum, weil die Abfrage eben zwei Results findet wo die LIKE bedinugng erfüllt ist. Was muss ich mahcen damit er mir jeden Thread nur maximal einmal liefert, auch wenn dort zweimal 'Himmel' vorkommt. DANKE EUCH!
Andi
Kommentar