Antworten auf deine Fragen:
Neues Thema erstellen

PHP Header und Ajax Load

Hi,
mittels Ajax lassen sich Inhalte ja schön nachladen.
Doch was, wenn der Inhalt einen Header-Location-Befehl aufweist? Dann gibt das lustige Ergebnisse, da Ajax nicht weiß was er damit jetzt anfangen soll.
Eine Lösung wäre statt einem header-location-Befehl in PHP z.B. echo window.location.href .. etc. auszugeben, doch das entspricht doch nicht der schönen Syntax.
Gibt es also eine andere Möglichkeit den Ajax-Load abzubrechen, sofern im zu ladenden Code ein PHP-Headerbefehl vorhanden ist?

Gruß
 

Duddle

Posting-Frequenz: 14µHz

AW: PHP Header und Ajax Load

Wenn eine bestimmte Seite umleiten soll und du Seiten per AJAX lädst, muss AJAX / die Scriptsprache die Umleitung machen.

Dein Script kann prinzipiell nie wissen, was in der PHP-Datei drin ist, nur ihr Ergebnis. Natürlich kannst du den Quellcode oder irgendeinen anderen Hinweis als Teil der PHP-Auswertung erzeugen lassen, das wäre dann dein "echo window.location.href"-Ansatz.

Wenn du dann dafür unterscheiden musst, ob eine Seite von AJAX oder nicht aufgerufen wurde, reicht ein einfacher GET-Parameter.


Duddle
 
AW: PHP Header und Ajax Load

Aber gibt es noch eine andere Möglichkeit außer window.location.href?
Ajax soll den Load abbrechen sofern im zu ladenden PHP-File ein header-Befehl auftaucht.
Ich finde die oben genannte Möglichkeit nicht sehr (mal salopp gesagt) schön.
 

Duddle

Posting-Frequenz: 14µHz

AW: PHP Header und Ajax Load

Ein AJAX-Aufruf kann von sich aus genauso wenig feststellen, ob eine PHP-Datei ein header() enthält wie ob eine PHP-Datei ein print_r() enthält. Er sieht immer nur das Ergebnis der interpretierten Datei.

Du könntest maximal den HTTP-Status (302 o.ä.) erkennen, aber das bedeutet nicht automatisch, dass in der PHP-Datei ein header() vorkommt.


Duddle
 
AW: PHP Header und Ajax Load

Ok also kurz und knackig: Die einzige Möglichkeit zu umgehen dass Fehler auftreten wenn eine zu ladende PHP-Datei einen header-Befehle beinhaltet ist, die Header-Befehle bei einem Ajax-Load durch echo window.location.href o.Ä. zu ersetzen!?
 

Duddle

Posting-Frequenz: 14µHz

AW: PHP Header und Ajax Load

Die einzige Möglichkeit zu umgehen dass Fehler auftreten wenn eine zu ladende PHP-Datei einen header-Befehle beinhaltet ist, die Header-Befehle bei einem Ajax-Load durch echo window.location.href o.Ä. zu ersetzen!?
Natürlich nicht. Du musst nur die Konsequenz des header()-Befehls, lies: den Statuscode, erkennen und ordentlich behandeln.

Das ist aber nicht das gleiche wie zu wissen, ob in der PHP-Datei ein header() vorkommt.
Wenn du eine Pistole siehst weißt du nicht, wieviele Kugeln im Magazin sind. Du kannst lediglich auf eine gefeuerte Kugel reagieren. Und selbst dann weißt du nicht, ob die aus dem Magazin oder aus der Kammer oder gar aus einer zweiten Pistole stammt.


Duddle
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Neueste Themen & Antworten

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.635
Beiträge
1.538.455
Mitglieder
67.558
Neuestes Mitglied
StarsMan
Oben