Redirect in PHP ohne Verwendung von header-Methode
Diese contact.php form arbeitete verarbeiten, senden und dann umleiten auf eine neue Seite, und dann plötzlich einfach aufgehört zu arbeiten. Ich habe versucht, hinzufügen von Fehlerbehandlung und auch bewegen header an die Spitze vor allen anderen, aber keiner funktioniert. Die form ist immer noch die übermittlung der Daten als erwartet, es ist nur der redirect nicht funktioniert. Irgendwelche Ideen würde geschätzt.
<?php
include 'config.php';
$post = (!empty($_POST)) ? true : false;
if($post)
{
$email = trim($_POST['email']);
$subject = "Downloaded Course Units";
$error = '';
if(!$error)
{
$mail = mail(WEBMASTER_EMAIL, $subject, $message,
"From: ".$email."\r\n"
."Reply-To: ".$email."\r\n"
."X-Mailer: PHP/" . phpversion());
if($mail)
{
echo 'OK';
header('location: http://www.google.com.au/');
exit();
}
}
}
?>
- Bitte entfernen Sie die exit();
- Sie können das nützlich finden,: - > stackoverflow.com/questions/768431/...
- PHP Header sind der richtige Weg, dies zu tun. Javascript oder Meta-tags sind nicht so zuverlässig. Entfernen Sie die echo 'OK'; Zeile (und jede andere Seite in der Ausgabe die Erzeugung von Linien) ansonsten ist der header-redirect wird nicht funktionieren (es sei denn, Sie output buffering in der php.ini)... exit() ist erforderlich, anderenfalls wird die Ausführung des Skripts fortsetzen!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Javascript verwenden.
Statt
Verwenden,
Wird es umleiten auch wenn etwas ausgegeben wird, die auf Ihrem browser.
Aber eine Vorsichtsmaßnahme getroffen werden: Javascript-Umleitung umleiten Ihrer Seite, auch wenn es etwas auf der Seite gedruckt.
Stellen Sie sicher, dass Sie nicht überspringen Sie die Logik in PHP geschrieben.
Ersetzen Sie die
header('location: http://www.google.com.au/');
Zeile mit dem code unten, um redirect in php ohne Verwendung der header-Funktion.Wenn Sie sich Wundern, dass warum habe ich auch Meta-Tags und JavaScript-Redirect, dann ist die Antwort sehr einfach.
Wenn JavaScript im Browser Deaktiviert, dann meta-tag redirect der Seite.
header funktioniert nicht nach include, echo.
versuchen Sie es erneut, ohne zu zählen, echo.
ODER statt der header-Funktion
verwenden
Wenden Sie sich mit diesem einfachen code
Ich das Problem gelöst mit:
HTML:
Verwenden :
GoToNow ('http://example.com/url-&error=Wert');