PHP Weiterleitung nach Ajax Abfrage

Sprint

Erfahrenes Mitglied
Hallo zusammen,

das Thema hört sich etwas merkwürdig an und ich bin mir nicht einmal sicher, ob es auch hier her gehört. Aber ich probiere es erste einmal so.

Folgendes Problem: Ich führe auf einer Seite Datenbanksuchen per Ajax durch. Das suchende PHP Script überprüft natürlich auch noch einmal die Gültigkeit der aktuellen Session (mit einem zentralen Script) und dieses leitet, wenn die Session abgelaufen ist, auf die Startseite weiter. Da bei der Suche die Seite ja nicht neu geladen wird, erscheint die Startseite plötzlich in dem DIV, in dem normalerweise die Suchergebnisse dargestellt werden. Ist natürlich nicht so toll.

Wie kann ich erreichen, daß die Weiterleitung im Hauptfenster wirkt und nicht im DIV?

Viele Grüße,
Sprint
 
Hi

Der JS-Teil fügt das, was PHP sendet, also einfach so ins Div ein,
auch wenns eine ganz andere Seite ist? So gehts natürlich nicht.

Erstens muss das PHP-Script irgendwie erkenntlich machen, wenn was nicht gepasst hat.
zB. den HTTP-Statuscode 403 senden statt umzuleiten, oder am Anfang der Ausgabe irgendwas
wie 1 für OK und 0 für Fehler... (angenommen natürlich, dass das PHP-Script nur für
Ajax-Verwendung da ist)

zB. für die 403-Lösung, und bei Verwendung der ajax-Funktion von jQuery, gibt es so wie das
success-Callback auch ein error-Callback: Wird success aufgerufen werden die Daten eben
eingefügt, bei error wird dem Benutzer irgendwie mitgeteilt dass was nicht passt (oder auch
eine Seitenumleitung per JS gemacht)
 
Hallo sheel,

der error-callback wird zwar schon verwendet, aber mit einem neuen Rückgabewert und einer Jquery Weiterleitung funktioniert es jetzt so wie es soll. Danke für den Tip.

Schönes WE,
Sprint
 
Eine solcher Response kommt bei mir immer mit einem Status. Dafür verwende ich JSON (kann leicht in PHP aus einem Array erstellt und in JS in ein Objekt geparst werden). So kannst du einen Status session-timeout o. ä. übergeben, bei dem die Seite neu geladen wird (location.reload()).

Grüße, Marcel.
 

Neue Beiträge

Zurück