<?php
session_start();
if (empty($_SESSION['uid'])) {
echo "<form action=\"pass.php\" method=\"POST\"><input type=\"password\" name=\"password\"><input type=\"submit\" value=\"提交\"></form>";
} else {
if ($_SESSION['uid'] != 'a') {
if ($_POST['password'] != 'a') {
header("location:pass.php");
} else {
$_SESSION['uid'] = 'a';
echo "认证成功";
}
}
}
?>
不成功,错在哪里
第1个回答 2013-09-25
<?php
session_start();
if($_POST['uid']){
$_SESSION['uid'] = $_POST['uid'];
}
if ($_SESSION['uid'] == 'a') {
echo "认证成功";
}else{
echo '认证失败';
}
?>
<form action='pass.php' method='POST'><input type='password' name='uid'><input type='submit' value='提交'></form>
session_start();
if($_POST['uid']){
$_SESSION['uid'] = $_POST['uid'];
}
if ($_SESSION['uid'] == 'a') {
echo "认证成功";
}else{
echo '认证失败';
}
?>
<form action='pass.php' method='POST'><input type='password' name='uid'><input type='submit' value='提交'></form>
第2个回答 2013-09-25
你这个判断的逻辑有问题
if($_POST['password']=='a')
{
$_SESSION['uid'] = 'a';
echo "认证成功";
}
else{
echo "认证失败";
}
if($_POST['password']=='a')
{
$_SESSION['uid'] = 'a';
echo "认证成功";
}
else{
echo "认证失败";
}
第3个回答 2013-09-25
你这段应该是可以执行的啊,不成功?是哪一步不成功,效果是什么。追问
永远是输入密码这里,没有出现"认证成功"
追答$_SESSION['uid'] != 'a' 你在代码前面指定下 session['uid'] 这个值为a 啊,没有值肯定一直显示输入密码那个界面
本回答被提问者采纳第4个回答 2013-09-25
语法上来看没爰错误,你看一下session是否获取到了,只能你自己一步步的测试了追问
永远是输入密码这里,没有出现"认证成功"