2016-06-10 16 views
0

Ich möchte einen Fehler auf derselben Seite wie mein Formular anzeigen. Mein Formular geht auf eine andere Seite und verarbeitet und gibt das Ergebnis zurück. Wie kann ich den Fehler auf der vorherigen Seite anzeigen?Wie zeige ich eine Fehlermeldung auf der vorherigen Seite an?

if($_POST['btnManage']=="Signup"){ 
    $objCustomer->Email=$_POST['txtEmail']; 
    $objCustomer->Password=$_POST['txtPassword']; 
    $Status=$objCustomer->Signup(); 
    if($Status>0) 
    { 
     session_start(); 
     $_SESSION['Email']=$objCustomer->Email; 
     header("Location:../index.php"); 
    } else 
    { 
     echo "error"; 
    } 
} 
+2

Welche Art von Fehler möchten Sie? –

+0

Sie senden das Formular mittels einer AJAX-Anfrage im Hintergrund anstelle eines Standard-http-Formulars. Auf diese Weise wird Ihre Seite nicht vollständig neu geladen, sondern bleibt im Browser und Sie können die Antwort, die Sie zurück erhalten, zurück auf die Formularübergabe (den Fehler) auf die bereits geladene Seite übertragen. Dafür gibt es viele Beispiele im Internet. – arkascha

+2

können Sie ein beliebiges Beispiel angeben. das wäre eine große Hilfe. Danke –

Antwort

0

Gehen Sie mit, was Sie mit $ _SESSION haben, können Sie in der Sitzung eorr festlegen.

else 
{ 
$_SESSION["eorr"] = "message_here"; 
header("Location:../{form_page_here}"); 
} 

dann auf der Seite, die Ihre Form hat, führen Sie eine Überprüfung, ob $ _SESSION [ „eorr“] Haben sie eine Display die Meldung gesetzt. Sie müssten auch unset($_SESSION["eorr"];, nachdem es angezeigt wird, so dass es entfernt wird, wenn Sie es nicht erneut verwenden müssen.

0

Drei Schritt den Fehler

Schritt 1 zu handhaben: definieren Sie Ihre Fehlercode und Fehlermeldung

define('SYSTEM_ERROR',1000); 
define('SYSTEM_ERROR_MESSAGE','your error message'); 

Schritt 2: setzen Sie den aktuellen Fehlercode an die Referenz-URL als Parameter

http://localhost?error=1000 

Schritt3: Umleiten auf die Referenzseite, behandeln Sie den Fehlercode und zeigen Sie auf die Seite

$error = $_GET['error']; 
if($error ==SYSTEM_ERROR){ 
    $errorMessage = SYSTEM_ERROR_MESSAGE; 
} 
//show the $errorMessage 
Verwandte Themen