2017-10-03 2 views
1

ich auf einem Web-Projekt arbeite, wo ich von einer PHP-Seite auf einem anderen PHP-Seite verschieben möchte, wenn die Bedingung wahr ...Wie kann man von der aktuellen PHP-Seite auf eine andere PHP-Seite wechseln, wenn die Bedingung wahr ist?

In unten Login PHP-Seite, erhalte ich Benutzername und Passwort $ mit _POST[]. Wenn sowohl der Benutzername als auch das Passwort in (if-Anweisung) der aktuellen PHP-Anmeldeseite übereinstimmen, dann möchte ich zu einer anderen PHP-Seite (choice.php) springen, die in Header-Funktion unten nach if angegeben ist.

<html> 
<body> 
<head> 
</head> 
<form method="post" action="login.php"> 

<div id="div1"> 
    <h1>welcome to bizdiary</h1> 
    <div id="div2"> 

    <label >Username</label> 
    <input id="name" type="text" name="username" value="" 
     placeholder="username" /> 
    <label >Password</label><input type="text" name="password" value="" 
    placeholder="password"/> 

    <input type='submit' name="login" value="login" > 

    </form> 

<?php 
     if(isset($_POST['submit'])){ 


     $username=$_POST['username']; 
     $password=$_POST['password']; 

    if($username=='root' && $password=='tiger'){ 
    header("Location:http://localhost/bizdiary/choice.php"); die; 
     } 
    } 
    ?> 

+0

Entfernen Sie unnötigen Code vor der Buchung; und das ist ein Muss: [mcve]. Und, bitte, lege wenigstens deinen Code richtig ein. –

+0

Ihr Skript, ziemlich chaotisch, auf "submit" wird versuchen, auf eine Seite mit dem Namen login.php umzuleiten - das wäre also normalerweise, wo Sie die Daten im $ _POST-Array verarbeiten würden. Wenn Sie jedoch angeben möchten, dass Sie Benutzer auf die Seite ../choice.php umleiten möchten, sollten Sie $ _POST ['submit'], das nicht existiert, in $ _POST ['login'] ändern. – lovelace

Antwort

-1

sollten Sie Kontrolle MySQL. Beispiel

if ($_POST){ 
     $username = htmlspecialchars($_POST['username']); 
     $password = htmlspecialchars($_POST['password']); 

     if (empty($username) or empty($password)){ 
      echo 'Don't leave blank.'; 
     }else { 
      $user = mysql_query('SELECT * FROM user WHERE username = "'.$username.'" AND password = "'.$password.'"'); 

      if (mysql_num_rows($user)){ 

      header('Location: asd.php'); 
      }else { 
      echo 'Didn't find user.'; 
      } 
     } 
     } 
0

sollten Dieser Code funktioniert:

Die HTML-in Anfang der Datei. Entfernen Sie die Aktion in Ihrem Formular.

<?php 

if(isset($_POST['submit'])){ 
    $username=$_POST['username']; 
    $password=$_POST['password']; 

    $host = $_SERVER['HTTP_HOST']; 
    // Put in here the conditional that the request need to accomplish to redirect. 
    if($username=='root' && $password=='tiger'){    
     header("Location: http://{$host}/choice.php"); 
    } 
} 

?> 
<html> 
    <body> 
    <head> 
    </head> 
    <body> 
     <form method="post"> 

      <div id="div1"> 
      <h1>welcome to bizdiary</h1> 
      <div id="div2"> 

      <label >Username</label> 
      <input id="name" type="text" name="username" value="" placeholder="username" /> 
      <label >Password</label> 
      <input type="text" name="password" value="" placeholder="password"/> 

      <input type='submit' name="login" value="login" > 

     </form> 
    </body> 
</html> 
Verwandte Themen