2016-05-05 7 views
0

Ich habe zwei Dateien connect.php und login.php. Das Anmeldeskript gibt eine Benutzer-ID oder ein Passwort zurück, aber ich weiß, dass sie korrekt sind.PHP Fehler? in Passwort oder Benutzername

Die DB-Verbindung scheint in Ordnung zu sein und ich kann keinen spezifischen Fehler im PHP-Code in login.php sehen.

Kann jemand den Fehler erkennen oder in die richtige Richtung zeigen?

<!DOCTYPE html> 
<html lang="en"> 
    <head> 
    <meta charset="utf-8"> 
    <meta http-equiv="X-UA-Compatible" content="IE=edge"> 
    <meta name="viewport" content="width=device-width, initial-scale=1"> 
    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags --> 
    <title>Login</title> 

    <!-- Bootstrap --> 
    <link href="css/bootstrap.min.css" rel="stylesheet"> 

    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries --> 
    <!-- WARNING: Respond.js doesn't work if you view the page via file:// --> 
    <!--[if lt IE 9]> 
     <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script> 
     <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script> 
    <![endif]--> 
    </head> 
    <body> 

<div class="container"> 

     <form class="form-signin"> 
     <h2 class="form-signin-heading">Please sign in</h2> 
     <label for="user_id" class="sr-only">Email address</label> 
     <input type="email" id="user_id" class="form-control" placeholder="Email address" required autofocus> 
     <label for="inputPassword" class="sr-only">Password</label> 
     <input type="password" id="password" class="form-control" placeholder="Password" required> 
     <div class="checkbox"> 
     </div> 
     <button class="btn btn-lg btn-primary btn-block" type="submit">Log-in</button> 
     </form> 

    </div> <!-- /container --> 

<?php  //start php tag 
//include connect.php page for database connection 
Include('connect.php'); 

//if submit is not blanked i.e. it is clicked. 
if (isset($_REQUEST['Submit'])) //here give the name of your button on which you would like //to perform action. 
{ 
// here check the submitted text box for null value by giving there name. 
    if($_REQUEST['user_id']=="" || $_REQUEST['password']=="") 
    { 
    echo " Field must be filled"; 
    } 
    else 
    { 
    $sql1= "select * from users where email= '".$_REQUEST['user_id']."' && password ='".$_REQUEST['password']."'"; 
    $result=mysql_query($sql1) 
     or exit("Sql Error".mysql_error()); 
     $num_rows=mysql_num_rows($result); 
    if($num_rows>0) 
    { 
// redirect 
header("Location:ncr.php"); 
     } 
     else 
    { 
     echo "username or password incorrect"; 
    } 
    } 
} 
?> 
    <!-- jQuery (necessary for Bootstrap's JavaScript plugins) --> 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script> 
    <!-- Include all compiled plugins (below), or include individual files as needed --> 
    <script src="js/bootstrap.min.js"></script> 
    </body> 
</html> 

Dies ist die DB-Verbindung, aber es sieht gut aus.

<?php 
$hostname="localhost"; 
$username="xxx"; 
$password="xxxx"; 
$database="xxx"; 
$con=mysql_connect($hostname,$username,$password); 
if(! $con) 
{ 
die('Connection Failed'.mysql_error()); 
} 
mysql_select_db($database,$con); 
?> 
+3

Warum verwenden Sie das veraltet Bibliothek 'mysql_'? Versuchen PDO/MySqli statt –

+1

Ich sehe kein 'Name' Attribut in keinem der Felder - Das, was den Wert aus dem Feld in der von' $ _REQUEST', '$ _POST',' $ _GET' verbinden –

+0

&& ? Schreiben Sie das Wort Und ... – Proxytype

Antwort

1

in Ihrem HTML-Formular muss den Namen des Input für die PHP setzen kann die Werte:

<input type="email" name="user_id" id="user_id" class="form-control" placeholder="Email address" required autofocus> 

<input type="password" name="password" id="password" class="form-control" placeholder="Password" required> 

Ich hoffe, dass es Ihnen hilft ...

Verwandte Themen