跪求PHP用户登录,登陆后无法显示用户状态,不知道为什么,如果去验证用户名和密码后,session就无法保存 20

这是我的代码:登陆页面:<?phprequire_once('../Connections/bbs.php');?><?phpsession_start();$login... 这是我的代码:
登陆页面:
<?php require_once('../Connections/bbs.php'); ?>
<?php
session_start();
$loginFormAction = $_SERVER['PHP_SELF'];
if (isset($_POST['txtUsername'])) {
$loginUsername=$_POST['txtUsername'];
$password=$_POST['txtPassword'];
mysql_select_db($database_bbs, $bbs);
$sql = "SELECT * from users WHERE username = '$loginUsername' AND password = '$password'";
$query = mysql_query($sql);
$result = mysql_num_rows($query);
if($result){
session_register('MM_Username');
$_SESSION['MM_Username']=$_POST['txtUsername'];
echo "<script>location.href='menu.php';</script>";
}else
{
echo "<script>location.href='login.php?error=1';</script>";
}
}
?>
<!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">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>
<body>
<form action="<?php echo $loginFormAction; ?>" method="POST" name="form1" id="form1">
<table width="247" border="1" align="center">
<tr>
<td colspan="2" align="center">用户登录</td>
</tr>
<tr>
<td width="60">用户名</td>
<td width="171"><label>
<input name="txtUsername" type="text" id="txtUsername" />
</label></td>
</tr>
<tr>
<td>密码</td>
<td><label>
<input name="txtPassword" type="password" id="txtPassword" />
</label></td>
</tr>
<tr>
<td colspan="2" align="center"><label>
<input type="submit" name="Submit" value="登录" />
</label>
<label>
<input type="reset" name="Submit2" value="重置" />
</label></td>
</tr>
</table>
</form>
</body>
</html>

这是跳转页面:
<?php
//initialize the session
if (!isset($_SESSION)) {
session_start();
}
// ** Logout the current user. **
$logoutAction = $_SERVER['PHP_SELF']."?doLogout=true";
if ((isset($_SERVER['QUERY_STRING'])) && ($_SERVER['QUERY_STRING'] != "")){
$logoutAction .="&". htmlentities($_SERVER['QUERY_STRING']);
}

if ((isset($_GET['doLogout'])) &&($_GET['doLogout']=="true")){
//to fully log out a visitor we need to clear the session varialbles
$_SESSION['MM_Username'] = NULL;
$_SESSION['MM_UserGroup'] = NULL;
$_SESSION['PrevUrl'] = NULL;
unset($_SESSION['MM_Username']);
unset($_SESSION['MM_UserGroup']);
unset($_SESSION['PrevUrl']);

$logoutGoTo = "index.php";
if ($logoutGoTo) {
header("Location: $logoutGoTo");
exit;
}
}
?>
<table width="246" border="1">
<tr>
<td width="83">论坛系统</td>
<td width="147"><?php echo isset($_SESSION['MM_Username']) ? $_SESSION['MM_Username']:"游客"; ?> </td>
</tr>
</table>
把session放在第一行还是不行,我试过了,如果只是提交表单,把表单值赋给session,另一个页面可以显示session,但若是匹配数据库的信息,就不行了,为什么啊
展开
 我来答
余温萌宝cwb32
2010-12-28 · 超过52用户采纳过TA的回答
知道答主
回答量:203
采纳率:0%
帮助的人:151万
展开全部
把session_start()放在第一行。注意,不要用Win附件记事本编写,它会在文件头部放上两个特殊字节(编码识别符),php会在会话开始前输入它们,导致会话id无法借助Cookie传递。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
帐号已注销
2010-12-28 · TA获得超过268个赞
知道小有建树答主
回答量:437
采纳率:0%
帮助的人:269万
展开全部
<?php require_once('../Connections/bbs.php'); ?>
<?php
session_start();
$loginFormAction = $_SERVER['PHP_SELF'];
把 <?php require_once('../Connections/bbs.php'); ?> 代码部分 往后写吧 最好写在session_start();之后
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
_x_0_x_
2010-12-28
知道答主
回答量:35
采纳率:0%
帮助的人:21.1万
展开全部
我愁。。你另外一个页面开启session了没。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lottehu
2010-12-28
知道答主
回答量:7
采纳率:0%
帮助的人:1.2万
展开全部
编码统一下试试
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2010-12-28
展开全部
有什么提示
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式