aaalso: ich bin grad am grübeln, wie ich am besten eine suchfunktion für meine site realisiere...
was bis jetzt da ist, sind nur n paar denkansätze, aber vielleicht fällt euch ja ein, wie man das ganze verbessern könnte.
also erstmal hab ich mir gedacht, der user kommt auf ne seite, wo er sein suchwort eingeben kann
+ bei 4 checkboxen auswählen, wo er überall nach dem wort suchen möchte. Die Checkboxen sind folgende:
Interpreten (CDs / Artikel / News)
CDs (Album-Titel und Interpreten der Alben)
News
Autoren
alles klar soweit. die checkboxen werden, je nach anklicken mit dem
wert übergeben und dann wird gecheckt, wo überall gesucht
werden soll: quasi so:
so und jetz wirds lustig:der query, der mir jetzt spontan einfällt ist folgender:
jetz kommt mir das ein wenig unperformant vor--> hat dazu jemand nen verbesserungsvorschlag?
und hier die übergabe an meinen smarty
was bis jetzt da ist, sind nur n paar denkansätze, aber vielleicht fällt euch ja ein, wie man das ganze verbessern könnte.
also erstmal hab ich mir gedacht, der user kommt auf ne seite, wo er sein suchwort eingeben kann
+ bei 4 checkboxen auswählen, wo er überall nach dem wort suchen möchte. Die Checkboxen sind folgende:
Interpreten (CDs / Artikel / News)
CDs (Album-Titel und Interpreten der Alben)
News
Autoren
alles klar soweit. die checkboxen werden, je nach anklicken mit dem
wert übergeben und dann wird gecheckt, wo überall gesucht
werden soll: quasi so:
PHP-Code:
//Definition, welche bereiche durchsucht werden sollen
if(!isset($cd) | !isset($news) | !isset($interpreten) | $schalter = "ein"){
/* Wenn der schalter ein ist, aber keine andern variablen zum
durchsuchen übergeben wurden */
$cd = 1;//Alles auf 1 setzen, damit alles durchsucht wird
$news = 1;
$interpreten = 1;
}
// DER TEIL WO DIE CDS ABGEFRAGT WERDEN
if($cd = 1){// Wenn die Cds zum durchsuchen gewählt wurden, dann abfrage.
PHP-Code:
SELECT * FROM muak_cds WHERE text LIKE '%$suchwort%' OR interpret LIKE '%$suchwort%'
OR trackliste LIKE '%$suchwort%' OR autor LIKE '%$suchwort%'
und hier die übergabe an meinen smarty
PHP-Code:
$anzahlcds = mysql_num_rows($resultcd);
while ($r=mysql_fetch_array($res)) {
$tmp = array(
'username' => $r['username'],
'email'=> $r['email'],
'text'=> nl2br(htmlspecialchars($r['text'])),
);
$results[] = $tmp;
Kommentar