Undefined index: имя пользователя в C: \ wamp \ www \ Website \ storeadmin \ admin_login.php..и же для пароля

//index.php <?php session_start(); if(!isset($_SESSION["member"])){ header("location:admin_login.php"); exit(); } $managerID = preg_replace('#[^0-9]#i',"",$_SESSION["id"]); $manager = preg_replace('#[A-Za-z0-9]#i',"",$_SESSION["name"]); $password = preg_replace('#[A-Za-z0-9]#i',"",$_SESSION["password"]); include "../storescripts/connect_to_mysql.php"; $sql = mysql_query("SELECT * FROM admin WHERE id ='managerID' AND username ='$manager' AND password ='$password'LIMIT 1"); $exist_count = mysql_num_rows($sql); if($exist_count == 0){ echo("Your login session data in not in the database"); 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"> <html > <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Service Admin Area</title> <link rel="stylesheet" href="../style/style.css" type="text/css" media="screen"/> </head> <body> <div id="mainWrapper" > <?php include_once("../template_header.php");?> <div id="pageContent" > <div align="left" "style="margin-left:040px;"><h1>Hello Store Manager .What would you loke to do today</h1><br /> <h3><a href="inventory_list.php">Manage Inventory</a></h3><br/><h3><a href="">Manage Me</a></h3><br/></div></div> <?php include_once("../template_header.php");?> </div> </body> </html> //admin_login.php <?php session_start(); if(isset($_SESSION["member"])){ header("location:index.php"); exit(); } $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"> <html > <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title> AdminLogin</title> <link rel="stylesheet" href="../style/style.css" type="text/css" media="screen"/> </head> <body> <div id="mainWrapper" > <?php include_once("../template_header.php");?> <div id="pageContent" > <div align="left" "style="margin-left:040px;"><h1>Please login to continue</h1><br /> </div> <form id="form1" name="form1" method="post" action=" admin_login.php"> UserName<br /> <input type="text" name="username" id="username" size="40"/> Password<br /> <input type="password" name="password" id="password" size="40"/> <br /> <br /> <br /> <input type="submit" name="button" id="button" value="LogIn"/> </form> </div> <?php include_once("../template_header.php");?> </div> </body> </html> 

Это становится утомительным, и я не могу получить ошибку, и я знаю, что она довольно маленькая и действительно надеюсь, что я смогу исправить ошибку среди вас, ребята. Эти две страницы php – это страницы входа администратора в мои практические веб-документы.

Вы используете $_SESSION['name'] в одном скрипте и $_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"> .... в //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"> .... 

Некоторые другие примечания:

  • В форме входа в систему есть два <html>
  • Атрибут действия формы входа в систему имеет пробел перед именем сценария
  • Если вы используете LIMIT 1 в своем SQL, вам не нужно обертывать mysql_fetch_array через некоторое while()