$_SESSION['name']
を使用しています 1つのスクリプトと$_SESSION['username']
別の場所で。
username
を変更すると想像できます name
へ またはその逆の場合、エラーはなくなります。
パスワードのエラーが何であるかはわかりません。セッションが開始されたばかりで、$ _ SESSION配列が空であるため、パスワードが表示されているように感じます。if(isset($ _ SESSION [ '...']))周り。
admin_loginで、ログインボタンがクリックされていること、およびフォームをロードしているだけではないことを確認する必要があります。つまり、
//admin_login.php
<?php
session_start();
if(isset($_SESSION["member"])){
header("location:index.php");
exit();
}
if(@$_POST['button'] == 'LogIn'){ // <- Check the user has clicked the button
$manager = preg_replace('#[A-Za-z0-9]#i',"",$_SESSION["username"]);
$password = preg_replace('#[A-Za-z0-9]#i',"",$_SESSION["password"]);
include "../storescripts/connect_to_mysql.php";
$sql = mysql_query("SELECT * FROM admin WHERE username ='$manager' AND password ='$password'LIMIT 1");
$exist_count = mysql_num_rows($sql);
if($exist_count == 1){
while(mysql_fetch_array($sql)){
$id = $row["id"];
}
$_SESSION["id"]= $id;
$_SESSION["name"]= $manager;
$_SESSION["password"]= $password;
header("location:index.php");
exit();
}else{
echo 'This information is incorrect,try again <a href = "index.php">Click Here</a>';
exit();
}
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
....
その他の注意事項:
- 2つの
<html>
があります ログインフォームのタグ - ログインフォームのアクション属性には、スクリプト名の前にスペースがあります
- SQLでLIMIT1を使用する場合は、
mysql_fetch_array
をラップする必要はありません。while()
で