现在有3个php文件 login.php(登录页面) check.php(验证登录页面) chat.php(聊天室内容)
我的思路是这样的,填写玩login.php页面action到check.php里,对数据进行验证,数据库通过验证的话,那么跳转到chat.php页面
但是我用header()跳转的话,在chat.php页面接受不到登录的用户名 后来百度 用session 对于这个不太了解
大家帮着看下这样的用法问题出在哪
chat.php
<?php //****************参数设置****************
@session_start();
$_SESSION["username"]=$_POST["post_name"];
//显示在线用户
...check.php
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST'){
$con = mysql_connect("localhost","root","mysql") or die("fail");
// echo "数据库连接成功!<br>";
mysql_select_db('php_chat');
//$_POST['pwd'] = md5($_POST['pwd']); //md5验证
$username=$_POST['post_name'];
$password=$_POST['post_pass'];
$sql = "select * from name where name='{$_POST['post_name']}' and pass='{$_POST['post_pass']}'";
$result = mysql_query($sql);
if(mysql_num_rows($result) != 0){
//当验证通过后,启动session
session_start();
//注册登陆成功的admin变量,并赋值true
$_SESSION["user_name"]=$_POST['post_name'];
header ("Location:chat.php") ; //重新定向到其他页面
} //登录过的话立即结束
else{
echo "账号或密码错误<br>" ;
echo "<font color=red>登录失败!</font><br><a href='login.php'>请重新输入</a>";
}
exit();
}
?>login.php
<?php //启动session
session_start();
//声明变量
$_SESSION["username"]=$_POST["post_name"];
...
<form action="check.php" method="post" name="login">
Enter your name: <input type="text" name="post_name" /><br>
Enter your password: <input type="password" name="post_pass" /><br>
<input type="submit" value='登陆' name='sub' onclick="javascript:checklogin()";/>
</form>麻烦了,能具体的讲下吗?
我的思路是这样的,填写玩login.php页面action到check.php里,对数据进行验证,数据库通过验证的话,那么跳转到chat.php页面
但是我用header()跳转的话,在chat.php页面接受不到登录的用户名 后来百度 用session 对于这个不太了解
大家帮着看下这样的用法问题出在哪
chat.php
<?php //****************参数设置****************
@session_start();
$_SESSION["username"]=$_POST["post_name"];
//显示在线用户
...check.php
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST'){
$con = mysql_connect("localhost","root","mysql") or die("fail");
// echo "数据库连接成功!<br>";
mysql_select_db('php_chat');
//$_POST['pwd'] = md5($_POST['pwd']); //md5验证
$username=$_POST['post_name'];
$password=$_POST['post_pass'];
$sql = "select * from name where name='{$_POST['post_name']}' and pass='{$_POST['post_pass']}'";
$result = mysql_query($sql);
if(mysql_num_rows($result) != 0){
//当验证通过后,启动session
session_start();
//注册登陆成功的admin变量,并赋值true
$_SESSION["user_name"]=$_POST['post_name'];
header ("Location:chat.php") ; //重新定向到其他页面
} //登录过的话立即结束
else{
echo "账号或密码错误<br>" ;
echo "<font color=red>登录失败!</font><br><a href='login.php'>请重新输入</a>";
}
exit();
}
?>login.php
<?php //启动session
session_start();
//声明变量
$_SESSION["username"]=$_POST["post_name"];
...
<form action="check.php" method="post" name="login">
Enter your name: <input type="text" name="post_name" /><br>
Enter your password: <input type="password" name="post_pass" /><br>
<input type="submit" value='登陆' name='sub' onclick="javascript:checklogin()";/>
</form>麻烦了,能具体的讲下吗?
试了下 输出 没有值登陆没成功 只是单纯的跳转到了chat.php页面
//****************参数设置****************
@session_start();
echo $_SESSION["user_name"];exit;//....
?>
chat.php直接这么写就行了,用post是不行的
就可以直接用$_SESSION['user_name'],无需再获得。
销毁?
session_destroy();
关闭 ?
就是说session保存了之后 关闭以后仍然保存了 开启chat.php仍然是原来的用户名
我想弄成 退出之后,直接进chat.php的话,就是匿名的p.s :剩余可用分在哪查询啊?
/pain fozzainter
Phpnewnew对fozzainter嚷道:“fozzainter,你又没死,哇哇大叫些什么?”