<center>
<?php
include("conn.php");
$name=$_POST['username'];
$passowrd=$_POST['password']; $sql = "SELECT * FROM user WHERE username = '$name' and password='$passowrd'";
$res = mysql_query($sql);
$rows=mysql_num_rows($res);
if($rows){
setcookie("cookie", "ok");
header("refresh:0;url=list.php");
exit;
}
else echo "<script language=javascript>alert('用户名密码错误');history.back();</script>";
include("head.php");
if($_COOKIE['cookie']!='ok'){
?>
<form action="" method="post" name="myform" onsubmit="return Checklogin();">
ID:<input type="text" name="username" /><br>
PW:<input type="password" name="password" /> <input type="submit" name="submit" value="登陆"/>
</form>
<?
}else{
?>
<a href='?out=login'>退出</a>
<?
}
?>
</center>
这是我的一个登录界面的代码,但是问题是每次一刷新就自动的弹出 用户名密码错误的对话框, 问一下这个怎么解决呢??
<?php
include("conn.php");
$name=$_POST['username'];
$passowrd=$_POST['password']; $sql = "SELECT * FROM user WHERE username = '$name' and password='$passowrd'";
$res = mysql_query($sql);
$rows=mysql_num_rows($res);
if($rows){
setcookie("cookie", "ok");
header("refresh:0;url=list.php");
exit;
}
else echo "<script language=javascript>alert('用户名密码错误');history.back();</script>";
include("head.php");
if($_COOKIE['cookie']!='ok'){
?>
<form action="" method="post" name="myform" onsubmit="return Checklogin();">
ID:<input type="text" name="username" /><br>
PW:<input type="password" name="password" /> <input type="submit" name="submit" value="登陆"/>
</form>
<?
}else{
?>
<a href='?out=login'>退出</a>
<?
}
?>
</center>
这是我的一个登录界面的代码,但是问题是每次一刷新就自动的弹出 用户名密码错误的对话框, 问一下这个怎么解决呢??
解决方案 »
- 帮我看一下这段代码??
- 怎样读取一个不在web目录下的图片文件?
- php当中如何实现增量查询呢?
- 【急!】想要用get获取网址变量,但是服务器提示域名不真实存在,无法访问,应该怎么办?
- mysql连接上了后,怎么判断数据库是否存在,不存在则新建一个数据库
- 找php免费空间
- 关于变量的问题(急)
- cn域名whois信息是乱码的问题
- 急!如何在php中获得当前的时间呀!
- 100分!如何去掉<input type="hidden" name="PHPSESSID" value="1e3cfa7327459aa2f0c5ce11bc3dd5ed" />
- 不太清楚ASP和PHP关于16位进制数的差异
- 各位大侠 在下利用Linux默认环境里的mailx发邮件没问题 我想输出html的邮件内容
<center><?php
include("conn.php");
if($_GET[out]){
setcookie("cookie", "out");
echo "<script language=\"javascript\">location.href='login.php';</script>";
}
$password=$_POST[pw];
$username=$_POST[id];
$sql="SELECT * FROM `user` WHERE `username` = '$username' AND `password` = '$password' ";
$rew=mysql_query($sql);
$pd=mysql_num_rows($rew);
if($pd){
setcookie("cookie", "ok");
echo "<script language=\"javascript\">location.href='login.php';</script>";
}
else echo " <script language=javascript>alert('用户名密码错误');history.back(); </script>";
include("head.php");
if($_COOKIE['cookie']!='ok'){
?>
<form action="" method="post" name="myform" onsubmit="return Checklogin();">
用户名:<input type="text" name="id" /><br>
密码:<input type="password" name="pw" /> <br>
<input type="submit" name="submit" value="登陆"/>
<nput type="submit" name="注册" value="跳转" onclick="javascript:location='123.htm'"/>
</form>
<?
}else{
?>
<a href='?out=login'>退出</a>
<?
}
?></center>
<SCRIPT language=javascript>
function Checklogin()
{
if (myform.id.value=="")
{
alert("请填写登录名");
myform.id.focus();
return false;
}
if (myform.pw.value=="")
{
alert("密码不能为空");
myform.pw.focus();
return false;
}
}
</SCRIPT>
如果把else echo " <script language=javascript>alert('用户名密码错误');history.back(); </script>";去掉就可以登录。
if($_SERVER['REQUEST_METHOD']=='POST')
{
include("conn.php");
$name=$_POST['username'];
$passowrd=$_POST['password'];
$sql = "SELECT * FROM user WHERE username = '$name' and password='$passowrd'";
$res = mysql_query($sql);
$rows=mysql_num_rows($res);
if($rows)
{
setcookie("cookie", "ok");
header("refresh:0;url=list.php");
exit;
}
else
{
echo " <script language=javascript>alert('用户名密码错误');history.back(); </script>";
exit;
}
}
else if($_COOKIE['cookie']!='ok')
{
echo '
<form action="" method="post" name="myform" onsubmit="return Checklogin();">
用户名: <input type="text" name="id" /> <br>
密码: <input type="password" name="pw" /> <br>
<input type="submit" name="submit" value="登陆"/>
<input type="submit" name="注册" value="跳转" onclick="javascript:location=\'123.htm\'"/>
</form>';
}
else
{
echo "<a href='?out=login'>退出 </a>";
}
没验证代码是否可执行,按照你的代码分析,逻辑可能应该是这样的。
name要过滤不要直接POST,不然容易引起SQL注入问题。