Mehrere SELECT Suchen auf einer Seite

julia29

Erfahrenes Mitglied
Hallo,

ich möchte mehrere SELECT-Suchen auf einer Seite ermöglichen, da bei allen Ergebissen die nachfolgende Tabelle immer die gleiche ist.

Beispiel:
1. SELECT-Suche sucht alle Artikel eines Kunden (Standard)
2. SELECT-Suche über ein INPUT-Feld soll nur bestimmte Artikel dieses Kunden listen
3. SELECT-Suche über Alphabet mit Anfangsbuchstaben (z.B. "B" findet Banane, Birnen, ...) dieses Kunden

Baue ich für jede Suche eine separate Seite, funktioniert alles. Änderungen am Tabellen-Layout muss ich dann aber 3x durchführen, also nicht so gut.
Habe ich alle SELECT-Suchen auf einer Seite stören sie sich gegenseitig.
Gibt es hier irgendwo ein Beispiel wie ich mehrere SELECT-Suchen in einer Datei ausführen kann.
Mit der Forum-Suche bin ich nicht weitergekommen.
 
Hallo,

Was meinst du mit "sie stören sich gegenseitig"? Grundsätzlich kannst du eine beliebige Anzahl an SELECTs auf einer Seite ausführen. Vielleicht wäre es hilfreich wenn du mal ein bisschen Code posten könntest und wir dann helfen den Fehler zu finden.
 
Du übergibst die Such-Stichwörter per URL und liest sie auf deiner Seite aus. Dort frägst du sie in einer switch() aus und kannst hier bestimmen welcher Select abgeschickt wird.

Dann wird allerdings dein Layout wie du oben schon geschrieben hast auch nicht per Passen.
Du könntest das alles auch per AJAX in ein DIV laden, die einzelnen Seiten für die Abfragen haste ja schon.
 
@steiner_B
Hier mal etwas Code.
Nehme ich jede SELECT-Suche für sich allein (die beiden anderen jeweil auskommentiert) funktionieren alle drei für sich super. Also ist die Abfrage als solches OK.

PHP:
#/*    # SUCHE 1 STANDARD
$abfrage = "SELECT `kk_ipad`.*, `jos_users`.*
FROM `kk_ipad`
LEFT JOIN `jos_users` ON `kk_ipad`.`kdnr` = `jos_users`.`id`

WHERE `kk_ipad`.`kdnr`= '".$kdnr."'
ORDER BY product_name
LIMIT $start, $eintraege_pro_seite";
#*/


#/*    //    SUCHE 2 FORM
$suche2 = $_POST["suche2"];
#$suche2 = "ma";
$abfrage = "SELECT *
FROM kk_ipad
WHERE `kk_ipad`.`kdnr`= '".$kdnr."' AND product_name
LIKE '%".$suche2."%'
ORDER BY product_name
LIMIT $start, $eintraege_pro_seite";
#*/

#/*    //    SUCHE 3 FORM
$suche3 = $_POST["suche3"];
#$suche2 = "ma";
$abfrage = "SELECT *
FROM kk_ipad
WHERE `kk_ipad`.`kdnr`= '".$kdnr."' AND product_name
LIKE '".$suche3."%'
ORDER BY product_name
LIMIT $start, $eintraege_pro_seite";
#*/

Mache ich alle drei gleichzeitig aktiv, kommen nicht nachvollziehbare Ergebnisse.
Muss der Code bei mehreren SELECT-Abfragen anders geschrieben werden?
 
Hallo,

Du darfst auf jeden Fall nicht alle drei Statements in der selben Variable speichern, sonst überschreibt dir ja das dritte die ersten beiden.

Wo wird den das Statement ausgeführt? Und was für Ergebnisse bekommst du?
 
Zurück