PHP 登陆验证

if($_POST[submit]){if($_POST[username]=="xxx"&&$_POST[pass]=="yyy"&&$_POST[check]==$_... if($_POST[submit]){
if ($_POST[username]=="xxx"&&$_POST[pass]=="yyy"&&$_POST[check]==$_SESSION[check_picture]){
echo "<script>window.location.href='main.php';</script>";
}
elseif (!($_POST[username]=="xxx")||!($_POST[pass]=="yyy")){
echo "用户名或密码错误";
}
elseif(!($_POST[check]==$_SESSION[check_picture])){
echo "验证码错误";
}
}

现在的情况是当我用户名或者密码错误或者验证码错误时,我原来的框里填的错误的内容会消失,现在我不想让他们消失,只想显示错误提示就好,让用户自己去改掉错误内容,应该怎么做?
还有就是,当我输入错误,页面提示之后,我再刷新,页面上的提示仍然存在,我要怎么去除?
展开
 我来答
jiangxibaiyi
2012-01-27 · 跟随风去旅行-伤心的歌
jiangxibaiyi
采纳数:3973 获赞数:14411

向TA提问 私信TA
展开全部
elseif ($_POST[username]!='xxx'||$_POST[pass]!='yyy')){
echo '<script>alert("用户名错误")';
exit('history.back();</script>');
}
按照上面的改即可
例外给个建议,php中的字符串,如果不用到变量的话,最好使用单引号,这样可以增加php的执行性能,因为php会对双引号中的变量进行编译,如果你双引号中没有变量,而php还是会先查找一下有没有变量,这个动作就是多余!
比如:
<?php
$b=123;
echo "数字$b";
?>
这样就需要用双引号,因为里面直接写了个变量$b
<?php
echo '数字123';
?>
这样就没必要用双引号了,里面没有变量!执行效率肯定要比上面的那个高!
cyan24
2012-01-18 · TA获得超过1626个赞
知道小有建树答主
回答量:1128
采纳率:0%
帮助的人:865万
展开全部
明白LZ的意思,不过这个需要用到AJAX,LZ可以直接百度下AJAX和PHP登录模块,然后照葫芦画瓢!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
phy25
2012-01-18 · 超过62用户采纳过TA的回答
知道小有建树答主
回答量:175
采纳率:0%
帮助的人:150万
展开全部
你把那些框的代码也贴上吧,需要改那个。

输入错误后再刷新,默认是提交上一次输入的错误的用户名和密码的请求,自然还会提示错误啊。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
欢欢闲谈
2012-01-18 · 超过62用户采纳过TA的回答
知道小有建树答主
回答量:474
采纳率:0%
帮助的人:202万
展开全部
既然提交了,肯定是要刷新页面的,用ajax来写才行
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式