von m3rlin |
sorry. wollte nicht klugscheißen <IMG SRC="/phpBB/images/smiles/icon_wink.gif"> |
von Talk-Server |
@m3rlin
so war das von mir auch gemeint allerdiung muss er erst die $variable in eine array aufteillen und einen SQL Befehl per while erzeugen so hab ich es gemacht.
hier ne kleine abgespeckte demo:
hier die teilung in wörtern
$query = ereg_replace(", ",",", $q);
$query = ereg_replace(" ,",",", $query);
$query = ereg_replace(" ",",", $query);
$query = explode(",", $query);
und hier die schleife
$SQL .= " WHERE ";
$cfgSuchFeld = array("Titel","Text","User","Signatur","UserID");
for ($x=0;$x<count($cfgSuchFeld);$x++) {
$y=0;
while ($y < count($query)) {
if ($x==0 && $y==0) {
$SQL .= " " . $cfgSuchFeld[$x] . " like '%$query[$y]%'";
} else {
$SQL .= " or " . $cfgSuchFeld[$x] . " like '%$query[$y]%'";
}
$y++;
}
}
$themen = mysql_query("SELECT * FROM $DBTable $SQL") or mysql_die();
unset($SQL);
---
Mfg Neo Track
Visit: Talk-Server.com |
von m3rlin |
Hallo,
wenn Du nach mehreren Wörtern suchen willst, kannst Du die Suchbegriffe auch im SQL-Statement mit OR oder AND verknüpfen, je nach dem ob mindestens eins oder alle Wörter gefunden werden sollen.
m3rlin
<font size=-1>[ Diese Nachricht wurde geändert von: m3rlin am 2002-03-24 12:18 ]</font> |
von Talk-Server |
hi
also eine sql befehl um eine spalte zu durchsuche wäre hierdas
spaltenname like '%$query%'
wenn du nach mehreren wörtern durchsuchen lassen möchtest musste du dir eine schleifentechnik ausdenken die einen sql befehl generiert.
---
Mfg Neo Track
Visit: Talk-Server.com |
von ATooM |
Wie kann ich am besten eine Suchfunktion einbauen ( Mysql ), die folgendes unterstützt:
Wenn ein Eintrag da ist z.B: "Tevion Rohlinge 2000" ( nur ein beispiel >>(( )
Dabei soll der Eintrag auch gefunden werden wenn man z.B. nur Rohlinge oder nur 2000 eingibt, wie kann ich dies am besten lösen ?
|
|