• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Zwei Suchmaschinen auf einer Seite

Status
Für weitere Antworten geschlossen.

Superotto

Neues Mitglied
Hallo,

ich habe zwei verschiedene mysql Tabellen, die ich auf einer Seite anzeigen möchte und für jede Tabelle habe ich eine eigene Search-Engine.
Mein Problem ist folgendes:
Wenn ich in der ersten Tabelle mit der zugehörigen Search-Engine suche wird das richtig Ergebnis angezeigt. OK.
Wenn ich dann in der zweiten Tabelle suche, wird auch das richtige Ergebnis angezeigt aber die erste Tabelle wird wieder in den Ausgangszustand gebracht. Und umgekehrt.
Also wie gesagt, die Search Engines funktionieren aber die Tabellen sind noch nicht ganz voneinander getrennt.


Hier ein Teil des Codes:


<div id="wrapper" style="position: relative; width: 800px; height: 460px; z-index: 1“>

<div id="upper" style="position: relative; width: 800px; height: 230px; z-index: 2">


<div id="upperlayer" style="position: relative; width: 800px; height: 230px; z-index: 3">


<table border = "1">


<?php

..

$searchtext = $_POST['searchtext'];
if ($searchtext != '') {
$where .= " AND Vorname LIKE '%$searchtext%' OR Nachname LIKE '% $searchtext%' OR Titel LIKE '%$searchtext%' OR Geburtstag LIKE '% $searchtext%'";
}
...

?>


</table>


</div>


<div id="such_layer" style="position: relative; width: 130px; height: 50px; z-index: 1; margin-left: auto; margin-right: auto; ">

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" > <input type="submit" value="SUCHEN" style="width: 130px" />
<input type="text" name="searchtext" style="width: 125px" />
</form>

</div>


</div>


<div id="lower" style="position: relative; width: 800px; height: 230px; z-index: 2">


<div id="upperlayer" style="position: relative; width: 800px; height: 230px; z-index: 3">


<table border = "1">


<?php

..

$searchtextt = $_POST['searchtextt'];
if ($searchtextt != '') {
$where .= " AND Vornamepr LIKE '%$searchtextt%' OR Nachnamepr LIKE '% $searchtextt%' OR Titelpr LIKE '%$searchtextt%' OR Geburtstagpr LIKE '%$searchtextt%'";
}
...

?>


</table>


</div>


<div id="such_layer" style="position: relative; width: 130px; height: 50px; z-index: 1; margin-left: auto; margin-right: auto; ">

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" > <input type="submit" value="SEARCH" style="width: 130px" />
<input type="text" name="searchtextt" style="width: 125px" />
</form>

</div>


</div>


</div>




Für mich als Anfänger wieder ein großes Problem und deshalb hoffe ich, dass mir jemand eine nicht zu theoretische Lösung findet.


Danke.
 
Wenn Du Dein Formular abschickst, wird Deine Seite neu geladen. Dann musst Du natürlich die Suchergebnisse aller Suchen, die angezeigt werden sollen, neu ermitteln. Ich vermute, Du ermittelst nur die Suchergebnisse der Suche, die ausgeführt wurde.
Bedenke, dass Du beim Laden einer Seite die Seite immer im Ausgangszustand bekommst und nie in dem Zustand, in dem sie vorher war.

Alternativ könntest Du die Suchergebnisse per Ajax anfordern, dann musst Du die aktuelle Seite gar nicht neu laden, da Ajax aber eine Kombination aus JavaScript und PHP ist, funktioniert das nicht, wenn JavaScript abgeschaltet ist und ist daher nicht unbedingt einsetzbar.
 
Hallo Efchen,

ich weiss nicht vieviele Stunden (Tage?) ich jetzt an diesem 'Problem' herumgemacht habe aber durch Deine Erklärung ist mir klar geworden, dass der jetzige Zustand wohl der Beste ist (es wird gesucht und wenn die Tabelle verlassen wird geht sie wieder in den Grundzustand).
Danke für Deine Hilfe.

Wenn natülich noch jemand eine andere Lösung hat bitte ich die mir mitzuteilen.

Schönes Wochenende!
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben