2016-12-01 2 views
1

Ich habe mich gerade gefragt, wie ich am unteren Ende meiner Anmeldeseite eine Nachricht zum Echo erhalten würde, um den Benutzer wissen zu lassen, dass seine E-Mail verwendet wird.Wie würde ich eine Nachricht am Ende meiner Anmeldeseite wiederholen?

$sql_email = "SELECT email FROM user WHERE email='$email'"; 
    $result_email = mysqli_query($conn, $sql_email); 
    $emailcheck = mysqli_num_rows($result_email); 

if ($emailcheck > 0) { 
     header("Location: ../signup.php?error=email"); 
     echo("an account with that email is already created, please enter a different email.</a>"); 
     exit(); 
    } 

dieser Code sendet den Benutzer signup.php Fehler = E-Mail, wo sie wieder anmelden können, aber ich würde eine Nachricht unter dem Anmeldeformular echo wie wenn man sagt: „ein Konto mit dieser E-Mail bereits erstellt, bitte geben Sie eine andere E-Mail ein. " Ich habe versucht, Echo zu verwenden, aber nichts erscheint auf der Seite.

+2

Nun natürlich nichts erschien. Sie senden einen 'Location'-Header, der dazu führt, dass der Browser des Benutzers sofort auf eine andere Seite umleitet. Niemand wird den Text Ihrer Redirect-Seite sehen. –

Antwort

1

Entfernen echo & 10 nach header location. Weil, wird es gehen, um Seite mit error als URL-Parameter zu registrieren. Dann fangen Sie es durch $ _GET und zeigen Sie die Fehlermeldung, wo immer Sie wollen in Anmeldung Seite.

if ($emailcheck > 0) { 
    header("Location: ../signup.php?error=email"); 
} 

signup.php

(Setzen Sie diesen Code an beliebiger Stelle Sie in Anmeldeseite wollen.)

if(isset($_GET['error']) && ($_GET['error'] == 'email')){ 
    echo "<p>an account with that email is already created, please enter a different email</p>"; 
} 

Quick Links

  1. How to set $_GET variable
  2. $_GET : PHP Manual
+0

das ist, was ich gesucht habe, vielen Dank. – kitsibu

+0

* Keep Coding * @ kitsibu. Freue mich zu helfen. –

Verwandte Themen