将SESSION变量'login'传递给其他页面时遇到问题。我一直在使用session_is_registered,但现在因为PHP5而不得不继续前进。
这是我的 login.php
$login=$_POST['login'];
$heslo=$_POST['heslo'];
// ochrana proti MySQL Injection + mysql query
$login = stripslashes($login);
$heslo = stripslashes($heslo);
$login = mysql_real_escape_string($login);
$heslo = mysql_real_escape_string($heslo);
$md5heslo=md5($heslo);
$sql="SELECT * FROM uzivatele WHERE login='$login' and heslo='$md5heslo'";
$result=mysql_query($sql);
//zjištění id uživatele pro přiřazení do SESSION
$query = mysql_query("SELECT * FROM uzivatele WHERE login='$login'");
$row = mysql_fetch_array($query);
$id = $row['id'];
// Mysql_num_row počítá řádky
$count=mysql_num_rows($result);
// Jestliže výsledek($result) se shoduje s $login a $heslo, musí být první řádek
if($count==1){
// zapsání proměnných login, přesměrování ná "loggedin_main.php"
$_SESSION['login'] = $login;
$_SESSION['id'] = $id;
header("location:loggedin_main.php");
}
else {
echo "<div class=\"grey_box\">Špatné jméno nebo heslo, zkuste to prosím znovu. <br> <a href=index.php>Přejít na hlavní stránku.</a></div>";}
以下是我在其他所有内容之前放置的代码。
<?php
session_start();
$_SESSION['login'] = $login;
if (isset($_SESSION[$login])){
header("location:index.php");
}
?>
答案 0 :(得分:1)
您似乎忘了将session_start();
放在login.php