2012-10-30 15 views
-2

嘿可以annyone查看我的代码并解释? $ error = array()不存储我的错误,并且 $ error [] ='错误的用户名或密码!';不工作。我需要在同一页面显示我的错误,因为我有登录脚本。

<?php 


$host="localhost"; // Host name 
$username="root"; // Mysql username 
$password=""; // Mysql password 
$db_name="2"; // Database name 

// Connect to server and select databse. 
mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB"); 
if (isset($_POST['formsubmitted'])) { 
    $error = array();//Declare An Array to store any error message 
}; 
// username and password sent from form 
$myusername=$_POST['myusername']; 
$mypassword=$_POST['mypassword']; 

// To protect MySQL injection (more detail about MySQL injection) 
$myusername = stripslashes($myusername); 
$mypassword = stripslashes($mypassword); 
$myusername = mysql_real_escape_string($myusername); 
$mypassword = mysql_real_escape_string($mypassword); 

$sql="SELECT * FROM `members` WHERE username='$myusername' and password='$mypassword'"; 
$result=mysql_query($sql); 

// Mysql_num_row is counting table row 
$count=mysql_num_rows($result); 

// If result matched $myusername and $mypassword, table row must be 1 row 

if($count==1){ 

// Register $myusername, $mypassword and redirect to file "login_success.php" 
//store data: 
$_SESSION['$myusername']; 
$_SESSION['$mypassword']; 
//next page: 

header("location:login_success.php"); 
} 
else { 
$error[] = 'Wrong username or password!'; 
}; 
?> 

ty! 
+1

所以,你所添加的错误消息的数组,语法正确。显示您实际尝试显示错误消息的代码。 –

+1

顺便说一句,在'};'最后一行失去';'。 –

+0

我尝试在窗体中显示它,所以我必须做什么? (不要生气,即时通讯新手在PHP和设计:D) –

回答

0

试试这个:

<?php 
if(isset($error) && is_array($error)) 
{ 
    echo "<div class='error'>" . implode("<br />", $error) . "</div>"; 
} 
+0

非常感谢你我解决问题! :) –

0

泰迈克尔!我知道了! :d 它应该是这样的:

<?php echo '<div class="errormsgbox"> <ol>'; 
      foreach ($error as $key => $values) { 

       echo ' <li>'.$values.'</li>'; 



      } 

?> 
相关问题