2013-07-28 321 views
0

我是PHP新手。目前我正在做一個登錄。我有一個錯誤,說PHP:登錄錯誤

「通知:未定義指數:用戶在C:第4行 你是歡迎\ XAMPP \ htdocs中\複選框\ admin.php的」

但「用戶」是已經存在在我的prcess_login.php中。

這裏是我的main_login.php代碼

Username :<input type="text" id="userID"name="username"><br/><br/> 

Password : <input type="password" id="passID"name="password"> 

<input type="image" name="btnLogin" src="image/btnLogin.png" value="SignIn" onClick="this.form.action='process_login.php'; this.form.submit()"> 

接下來是我的process_login.php

<?php 
include("connect.php"); 

$username = $_POST["username"]; //Storing username in $username variable. 
$password = $_POST["password"]; //Storing password in $password variable. 


$match = "SELECT * from tblmembers WHERE fldUsername = '".$_POST['username']."' AND fldPassword = '".$_POST['password']."';"; 

$qry = mysql_query($match); 

$num_rows = mysql_num_rows($qry); 



if ($num_rows <= 0) { 

echo "Sorry, there is no username $username with the specified password."; 

echo "Try again"; 

exit; 

} else { 



$_SESSION['user']= $_POST["username"]; 

header("location:admin.php"); 

} 
?> 

,最後,出現

<?php 
include("connect.php"); 
session_start(); 
echo "You are Welcome ". $_SESSION['user']; 
?> 

在admin.php的的admin.php的錯誤...我只是在這裏複製了這些代碼

http://www.phptutorialforbeginners.com/2012/10/php-simple-login-form-php-tutorial-for.html

  • 爲什麼它不在我process_login.php讓 「用戶」

請幫助我,我不明白這一點...謝謝您

+0

use session_start();在「我的process_login.php」的頂部,因爲沒有會話正在啓動,並且在admin.php中。session_start()應該在任何代碼之前的頁面頂部。 – TPSstar

+0

請不要在處理用戶信息時不要複製粘貼代碼而不知道它的作用。你的代碼使用了不推薦使用的數據庫api,容易受到sql注入的影響,並以純文本形式存儲密碼。最重要的是,你的代碼也容易受到XSS攻擊。 – PeeHaa

+0

注意不是錯誤,請將其粘貼在文件的前面: error_reporting(E_ERROR | E_WARNING | E_PARSE);也缺少session_start(); – UnknownError1337

回答

0

在session_start第一線在php標籤之後。

+0

@ Mihai ..謝謝你.. :)我不會忘記你說的話 –