PDA

View Full Version : PHP session, giúp với!



LTCOSCI
06-08-2005, 19:51
Tui đang tập tành PHP nên xin mọi ngươ`i giúp đỡ.
Tôi có 1 file test.php có code như sau:


<?php
session_start();
?>

<?php

require("config.php"); //file cau hi`nh
require("mysqlconnect.php"); // ket noi csdl

?>

<?php
echo $_SESSION['username'];
echo $_SESSION['type'];
include ("auth.php");
?>

file auth.php có code như sau:

<?php
$_SESSION['login'] = "";
$_SESSION['username'] = "";
$_SESSION['type'] = "";
$_SESSION['idtv'] = "";
$_SESSION['pass'] = "";
$_SESSION['group'] = "";
$username=$_POST['username'];
$password=md5($_POST['password']);
$sql = "SELECT * FROM ".$db_prefix."users WHERE (user_name='$username' AND password='$password')";
$result = @mysql_query($sql, $conn) or die(mysql_error());
if (mysql_num_rows($result)==1) {
$_SESSION['login']="true";
$_SESSION['username']=mysql_result($result, 0, 'user_name');
$_SESSION['type'] = mysql_result($result, 0, 'type');
$_SESSION['idtv'] = mysql_result($result, 0, 'user_id');
$_SESSION['pass'] = mysql_result($result, 0, 'password');
$_SESSION['group'] = mysql_result($result, 0, 'mgroup_id');

?>
<script>
self.location.href="test.php";
</script>
<?php }
else
{
?>
<html>

<meta http-equiv="Content-Language" content="en-us">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<body>
<center>
<table>
<tr>
<td class=barcolor3>
<form method="post" action="auth.php" onSubmit="return check_loginform(this)">
<table>
<tr>
<td class=barcolor3 colspan="2" align="center"><strong>DANG NHAP</strong></td>
</tr>
<tr>
<td class=barcolor3>Username:</td>
<td>
<input type="text" name="username" size="20">
</td>
</tr>
<tr>
<td class=barcolor3>Password:</td>
<td class=barcolor3>
<input type="password" name="password" size="20">
</td>
</tr>
<tr>
<td class=barcolor3></td>
<td class=barcolor3 align="center">
<input class=submit type="submit" value=" Dang nhap ">
</td>
</tr>
</table>

<p></p>
</form>
</td>
</tr>

</table>
</center>
<?php }?>
</body></html>


Vấn đề khi chạy bên máy Windows XP với PHP5 thì không có vấn đề, nhưng khi chạy bằng máy Fedora 3 với PHP4 thì lại không echo ra được username, là rỗng.
Tôi có thử test bằng cách thêm ở test.php ~ do`ng như sau ở sau dòng session_start(); :

$myvalue=session_id();
echo "Session la: " .$myvalue. "<br>";
thì ở máy win XP , mỗi lần nhấn F5 để refresh thì session không đổi, nhưng bên máy Fedora lại thay đổi, xin mọi người hướng dẫn để ở máy Fedora lấy được $_SESSION['username'];
Xin cám ơn !