1

我在将 SESSION 变量“登录”传递到其他页面时遇到问题。我一直在使用 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");
}
?>
4

1 回答 1

1

看起来你忘了放在session_start();login.php 的顶部

于 2013-02-07T15:57:05.183 回答