php登录问题

来源:百度知道 编辑:UC知道 时间:2024/06/29 01:07:29
帮忙看看这段登录,现在出现登录没任何反应!当username="admin"时进入"admin.php",其他用户进入"Authorcontrol.php"

<?php
$db=mysql_connect("localhost","root","123456");
mysql_select_db("blog",$db);
$result=mysql_query("SELECT * FROM member where username='$username' and password='$password'",$db);
if ($myrow = mysql_fetch_row($result))
{
//注册用户
session_start();
session_register("username");
session_register("password");
if ($username=$myrow["username"] and $password=$myrow["password"] )
// 身份验证成功,进行相关操作
{
if ($username=="admin")
{
header("location:admin.php");
}
header("location:Authorcontrol.php");
}
}
else
{
echo"身份验证失败!";
}
?>

首先你的代码有点问题!
你的错误
$myrow = mysql_fetch_row($result);
mysql_fetch_row():这个函数是取结果集中的一行,作为数字索引数组使用!
if ($username==$myrow["username"] and $password==$myrow["password"])
$myrow是数字索引数组,怎么用关键字得到它的值??

mysql_fetch_assoc():这个函数是取结果集中的一行,作为数字索引数组使用!

对你的见意:
session_start(); 应该放在文件的最上面!阅读代码的时候看到就知道该页面用了session,而且可以;

现在php已经是5.0以上了
现在我们已经不在用session_register("username");来注册一个会话变量,现在我们都是用$_SESSION['username'];来注册这个会话的!

楼上的改没改都一样,把这一段代码改一下。。

if ($myrow = mysql_fetch_row($result))
{
//注册用户
session_start();
session_register("username");
session_register("password");
if ($username==$myrow["username"] and $password==$myrow["password"])
// 身份验证成功,进行相关操作
{
if ($username=="admin")
{
header("location:admin.php");
}else{
header(&quo