2014-01-28 27 views
-1

在這個blow文件中的錯誤我想顯示錯誤如果登錄名或密碼是worng.now一次我使用回聲。所以你能告訴我如何在這裏使用錯誤信息。如何顯示php

我的代碼是

<?php 
    error_reporting(E_ALL); 
    ini_set('display_errors','5'); 
    include("conn.php"); 
    session_start(); 
    if($_SERVER["REQUEST_METHOD"] == "POST") 
    { 
     // username and password sent from Form 
     $u_name=addslashes($_POST['username']); 
     $password=addslashes($_POST['password']); 

     $sql="SELECT id FROM admin WHERE username='$u_name' and password='$password'"; 
     $result=mysql_query($sql); 
     $db_field=mysql_fetch_array($result); 
     $active=$row['active']; 
     $count=mysql_num_rows($result); 


     // If result matched $myusername and $mypassword, table row must be 1 row 
     if($count==1) 
     { 
      session_register("u_name"); 
      $_SESSION['login_user']=$u_name; 
      header("location: main.php"); 
     } 
     else 
     { 
       echo ("Your Login Name or Password is invalid"); 
     } 
} 
?> 
+2

請勿使用mysql_ *現在已刪除... – user2727841

+1

您確實不應以純文本格式存儲密碼。此外,您正在使用不推薦使用的mysql擴展,並且只是名義上阻止SQL注入。 –

回答

0

,我通常使用的是戰略全局聲明$error變量,並在我的PHP代碼,相應地更新它,甚至追加錯誤,因爲它們發生,如姓名無效,密碼失效等。到這個字符串並最終顯示在<div>

假設你想在固定於屏幕

<html> 
<body> 

....... 
...... 
<div id="errors" style="display:fixed;bottom:0px;left:20px;> 

<?php echo $error?> 

</div> 
0

頁腳dislplay錯誤,您應該使用

SELECT COUNT(*) FROM admin WHERE username='$u_name' and password='$password' 

,而不是因爲你的代碼返回1行(可能是一個空電池),即使有是你搜索的組合。使用COUNT(*)然後再拍查詢獲取ID,如果返回的結果是> 0

0

您應該檢查這個條件

if($_SERVER["REQUEST_METHOD"] == "POST") 

查收$_SERVER["REQUEST_METHOD"] 感謝的輸出。