中国教程网论坛's Archiver

kevinxiong 发表于 2007-11-28 20:57

最近研究起PHP来了,在这里碰到了个小问题了,求教各位老师们

<?php
$AdminName=$_POST["AdminName"];
if($AdminName!="")
{
   $AminPsw=$_POST["AdminPsw"];
   $id=mysql_connect("localhost","root","kevinxiong");
   mysql_select_db("classmates",$id);
   $query="SELECT * FROM admin WHERE AdminName='$AdminName'";
   $result=mysql_query($query,$id);
   if(mysql_num_rows($result)<1)
   {
     echo "对不起,用户名不存在";
   }
   else
   {
     $info=mysql_fetch_array($result,MYSQL_ASSOC);
         if($info["AdminPsw"]!=$AdminPsw)
         {
           echo "对不起,密码错误";
         }
         else
         {  
           session_start();
           $_SESSION["login"]="YES";
           echo "恭喜您,登陆成功了~~";
           exit;
         }
   }
mysql_close($id);
}
?>
<html>
<head>
<title>用户登录测试</title>
</head>
<body>
<form method="post" action="">
<table width="200" border="1" cellpadding="0" bordercolor="#999999">
  <tr>
    <td colspan="2"><div align="center">用户登录</div></td>
  </tr>
  <tr>
    <td>用户名:</td>
    <td><input type="text" size="16" name="AdminName" /></td>
  </tr>
  <tr>
    <td>密码:</td>
    <td><input type="password" size="16" name="AdminPsw" /></td>
  </tr>
  <tr>
    <td><input type="submit" value="登陆" /></td>
    <td><input type="reset" value="重置" /></td>
  </tr>
</table>
</form>
</body>
</html>


请问这段代码错误出现在什么地方?
能够检测得到用户名是否存在,但是不能判断密码是否正确,用正确的密码也显示错误信息,个人有点郁闷~~~#@jcwcn^@@#
求教!!!求教ing

kevinxiong 发表于 2007-11-28 21:10

我晕啊
不好意思
发现了错误在什么地方了~~
原来是第五行$AminPsw少写了一个d....
漏写了
都是自己粗心的错误!!!应该写成$AdminPsw~~~!!!!!#kt..jcwcn.com@ #kt..jcwcn.com@

寅生 发表于 2007-11-29 09:51

查询语句里的AdminName='$AdminName' 后面的变量放在单引号里也能被解析出来吗?

还从来没有这样试过

kevinxiong 发表于 2007-11-29 16:54

可以的~~
好象没有在单引号和双引号混合用的情况下
PHP对单引号和双引号要求不是那么严格~
几天的见解...
不知道事实上是不是这样的#bbs.jcwcn.com@ #bbs.jcwcn.com@

寅生 发表于 2007-11-29 17:33

单引号里面是纯字符串,不解析变量的

$a = 12;
echo '$a';
//输出应该是$a,而不是12

kevinxiong 发表于 2007-11-29 22:14

又了解到了一个东西....
谢谢中~~~

上面的查询语句是可以执行的..#kt..jcwcn.com@

FrogPrincess 发表于 2008-1-12 08:58

沙发一下

页: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.