URl aufrufen ohne die Funktion header()
Jan
- php
Hallo,
Wie kann ich denn nach einem "else" eine URL aufrufen lassen ohne den Befehl header() zu benutzten denn damit hat es nicht Funktioniert.
Da ich wenig Ahnung von PHP habe bin ich für jede Antwort dankbar.
MFG Jan
Wie kann ich denn nach einem "else" eine URL aufrufen lassen ohne den Befehl header() zu benutzten denn damit hat es nicht Funktioniert.
header() ist auch nicht dafür da um einen URL aufzurufen.
Da ich wenig Ahnung von PHP habe bin ich für jede Antwort dankbar.
Was meinst du mit "Aufrufen"? Willst du daten von einer externen Seite in deine 1:1 Einbinden oder vergleichbares?
Hallo,
Vielen Dank für eure schnelle Antwort.
Ich habe das Problem lösen können.
MFG Jan
Mahlzeit Jan,
Vielen Dank für eure schnelle Antwort.
Ich habe das Problem lösen können.
Die zukünftigen Leser und Archivsucher wären Dir sicher dankbar, wenn Du Deine Lösung verraten würdest ...
MfG,
EKKi
Hallo Ekki,
ich habe gerade mal auf deine Domain geschaut.
Ich weiss nicht, ob das gewollt ist oder nicht, aber da scheint einiges nicht korrekt zu laufen - ferner lassen sich sogar einige PHP-Sources einsehen (zb die /inc/config.security.php).
Siehe
http://webmail.ekki.net/
http://webftp.ekki.net/
Warum ich hier poste und dir keine Email sende? Ich denke, dass eine Email bei der aktuellen Konfiguration wohl nicht ankommen wird.
MfG
Peter
Hello,
Wie kann ich denn nach einem "else" eine URL aufrufen lassen ohne den Befehl header() zu benutzten denn damit hat es nicht Funktioniert.
"hat nicht funktioniert" ist keine qualifizierte Fehlerbeschreibung.
Was ist passiert, als Du den Location-Header benutzt hast?
Header können in einem PHP-Script nur solange gesetzt werden, wie noch keine Ausgabe an den Browser erfolgt ist. Mit der ersten Ausgabe an den Browser werden die bis dahin gesetzten Header nämlich gesendet und zwar als erstes, denn sonst wären es ja keine Header mehr.
Du musst also entweder die Ausgaben in einer Variablen sammeln und erst dann ausgeben, wenn keine Header mehr gesetzt werden, oder aber den Ausgabe-Buffer solange stoppen, bis alles fertig aufbereitet ist.
http://de2.php.net/manual/en/function.ob-start.php
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg
Moin!
Hallo,
Wie kann ich denn nach einem "else" eine URL aufrufen lassen ohne den Befehl header() zu benutzten denn damit hat es nicht Funktioniert.
Du hast vermutlich zuvor schon gesendet, dann geht das natürlich nicht mehr.
Entweder Du vermeidest vorher alle(!) Ausgaben oder du pufferst alle Ausgaben:
<?php
ob_start();
...
?>
Kannst Du das Senden der Daten nicht abwenden, dann sende _notfalls_ ein Javascript:
function GehWeg($loc) {
if (false === headers_sent) {
header("Location: $loc");
} else {
die ('
<script type="text/javascript">
alert("Sie werden jetzt zu '.$loc.' umgeleitet.";
document.location.href="'.$loc.'";
</script>'
);
}
}
GehWeg('http://example.com/');
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix