Seite 1 von 2

Suche funktionierende Suche

Verfasst: Sa 5. Mär 2005, 12:41
von Cyclist
Es werden zwar einige Suchmodule hier im Forum angeboten, aber bisher habe ich kein Modul gefunden, das auch den IE voll unterstützt.

Beim IE tritt immer das Phänomen auf, dass nach Aufrufen eines Treffers aus der Ergebnisliste bei Klick auf zurück die Seite nicht mehr angezeigt werden kann, bei anderen Browsern gibt es kein Problem.

Da aber noch immer die Mehrheit der Internetnutzer auf den IE setzen, sollte der auch voll unterstützt werden.

Die von Contenido auf der eigenen Homepage eingesetzten Suche macht da z.B. keine Probleme, aber die habe ich bei den Modulen noch nicht finden können. Wird die denn irgendwo zum Download angeboten? Oder gibt es eine andere unter IE funktionierende Suche?

Verfasst: Sa 5. Mär 2005, 14:20
von emergence
das modul das dort eingesetzt wird hab ich hier im forum aber nicht gesehen...

na wie auch immer
ich schätze mal du meinst das mit -> seite kann nicht angezeigt werden bzw seite nicht mehr gültig...

der unterschied liegt darin wie ein formular versendet wird -> method get oder post
wenn man get verwendet wird der search term als url link übergeben...
das sollte ebenso mit der volltextsuche funktionieren...

Verfasst: Sa 5. Mär 2005, 14:58
von Halchteranerin
aehm, emergence, ich habe schon mal darueber hier im Forum gelesen, hab's aber wieder verdraengt. Deine Aussage verstehe ich jetzt nicht ganz, deswegen frage ich nach: muesste es mit get ODER mit post funktionieren. Wenn ich dich richtig verstehe, meinst du, dass es mit get "richtig" funktioniert.

Bei der Suche, die ich einsetze (keine Ahnung, welches Modul das ist, und obi ich noch etwas daran geaendert habe oder nicht), wird method='POST' benutzt, und es funktioniert trotzdem. Ich hab's gerade mit IE und Firefox probiert, und ich bekomme da keine Fehlermeldung, wenn ich auf zurueck gehe, wird wieder meine Ergebnisliste angezeigt. Ihr koennt auch gucken, www.halchter.com, irgendwo unten im Menue "Volltextsuche" (ich glaube, ich sollte sie an einer auffaelligeren Stelle einbauen).

Cyclist, wenn du bei der obigen Seite keine Probleme hast, kann ich dir gerne den Code zur Verfuegung stellen ...

Verfasst: Sa 5. Mär 2005, 16:38
von kummer
es ist vermutlich noch eine einstellungsfrage des browsers. wenn die daten per post übertragen werden, stehen sie halt einfach nicht in der url. deshalb wird - je nach einstellung - beim user nachgefragt, ob er die daten nochmals übertragen möchte. wenn die übergabe mit der methode get erfolgt, steht alles in der url und klappt deshalb problemlos. bei suchen würde ich empfehlen, immer als methode get zu verwenden.

gruss,
andreas

Verfasst: Sa 5. Mär 2005, 16:55
von emergence
obs 'ne einstellungsache beim browser ist ??? -> keine ahnung
ich hab beim explorer diesbezüglich noch nicht gesehen...
dem rest stimme ich 100%ig zu...

@christa
frage durch kummers antwort beantwortet ?

Verfasst: Sa 5. Mär 2005, 17:10
von Halchteranerin
@emergence: die Frage mit get und post an sich schon, aber da du auch sagst, du haettest diesbezueglich bei IE nichts gesehen, frage ich mich nach wie vor, wieso es bei mir funktioniert, obwohl bei mir POST benutzt wird. :) Kann man einfach in einem Formular GET durch POST (oder umgekehrt) ersetzen, oder muesste man da mehr machen?

Verfasst: Sa 5. Mär 2005, 17:19
von emergence
Halchteranerin hat geschrieben:Kann man einfach in einem Formular GET durch POST (oder umgekehrt) ersetzen, oder muesste man da mehr machen?
es kommt auf das modul an... grundsätzlich ja
aber wenn der such begriff via $_POST['searchterm'] ausgewertet wird muss man das natürlich auch auf $_GET['searchterm'] ändern...
es ginge auch $_REQUEST['searchterm'] dann ist mehr oder weniger egal ob das formular auf get oder post gestellt ist...
(da sollte man auch noch wissen -> erst ab php4.1.0 vorher $HTTP_GET_VARS, $HTTP_POST_VARS)

Verfasst: Sa 5. Mär 2005, 17:35
von Halchteranerin
emergence hat geschrieben:aber wenn der such begriff via $_POST['searchterm'] ausgewertet wird muss man das natürlich auch auf $_GET['searchterm'] ändern...
es ginge auch $_REQUEST['searchterm'] dann ist mehr oder weniger egal ob das formular auf get oder post gestellt ist...
Interessante Frage. :wink: Ich steige da irgendwie gar nicht durch. Die von mir benutzte Suche hat zwei Module, einmal fuer die Eingabe und einmal fuer die Ausgabe. In der Ausgabe des Eingabemoduls steht u.a.
<form name='suche' method='POST' action='front_content.php?idcatart=254&lang=1&client=1'>
254 ist die Artikelnummer des Artikels, wo die Suchmodule eingebaut sind. Ich sehe aber in keinem der Module etwas mit $_POST, $_GET oder $_REQUEST.
Vielleicht habe ich aber auch nur gerade Tomaten auf den Augen. :lol: Ich bin jedenfalls froh, dass das Modul so funktioniert, wie ich es moechte, denn ich hatte auch meine Probleme damit.

Verfasst: Sa 5. Mär 2005, 17:55
von emergence
es gibt ja die nette datei
-> includes/globals_off.inc.php

die sorgt dafür das anstelle von $_POST['serachterm'], $_GET['searchterm'] auch $searchterm verwendet werden kann...

aber probier es einfach mal aus... stell das formular einfach mal von post auf get...

Verfasst: Sa 5. Mär 2005, 18:02
von Halchteranerin
emergence hat geschrieben:aber probier es einfach mal aus... stell das formular einfach mal von post auf get...
gucken, ob's knallt? :lol: Es knallt ... Wenn ich POST auf GET aendere, laeuft die Suche nicht mehr, ich komme wieder von der Suchseite auf die Startseite ... In der errorlog.txt steht dabei nichts.

Verfasst: Sa 5. Mär 2005, 18:07
von emergence
ach ja ne kleinigkeit hab ich da noch vergessen... der query string wird bei get ignoriert
-> ?idcatart=254&lang=1&client=1
das müsstest du als input hidden im formular einbauen...
also in etwa so

Code: Alles auswählen

<form name='suche' method='GET' action='front_content.php'>
<input type="hidden" name="idcatart" value="254">
<input type="hidden" name="lang" value="1">
<input type="hidden" name="client" value="1">...

Verfasst: Sa 5. Mär 2005, 18:11
von Halchteranerin
Aha, die Kleinigkeit war nicht ganz so unwichtig. :wink: Die ging zunaechst auch nicht, aber dann habe ich bemerkt, dass das Modul-Laempchen auch rot war: ich musste noch die Anfuehrungszeichen maskieren bzw. ich habe sie durch einfache Anfuehrungszeichen ersetzt. Aber da es bei mir auch mit POST ging, auch das Zurueckblaettern, merke ich keinen Unterschied zu vorher. 8)

Verfasst: Sa 5. Mär 2005, 19:49
von timo
vielleicht solltet ihr mal im IE die "Friendly HTTP Errors" ausschalten, denn "Die Seite kann nicht angezeigt werden" ist analog zu "Es ist ein Fehler aufgetreten". Ich denke nicht, daß es an GET und/oder POST liegt.

Verfasst: Sa 5. Mär 2005, 20:05
von Halchteranerin
nein timo, das mit "Seite kann nicht angezeigt werden" kam von emergence, ich vermute aber, dass Cyclist sich tatsaechlich auf "Seite nicht mehr gueltig", wo der Browser fragt, ob er die Seite neu laden soll. Es wurde schon mal an anderer Stelle hier im Forum darueber gesprochen, dass man das Verhalten auch hier im Forum bei der Suche hat. Es scheint die gleiche Geschichte zu sein.

Verfasst: Sa 5. Mär 2005, 20:14
von timo
Das mit der Fehlermeldung "Die Seite ist nicht mehr gültig" hängt mit dem POST zusammen, und zwar je nach Einstellung des Browsers.

GET ist, sofern die abgesendeten Daten nicht zu groß werden, immer die bessere Alternative, da man immer mit den Browserbuttons zurück gehen kann.