mysql_num_rows()无法在wampserver 2.2中给出错误

时间:2014-09-02 12:38:20

标签: php sql wampserver

给出错误:sql_num_rows()。当我点击此链接时,它会发送给我php网站。 我也试过mysql_fetch_array()两个都不适合我。我必须设计登录页面,任何人都可以帮助我在wampserver 2.2中使用代码。

的login.php

<?php
    require ('sql_connect.php');
    $sql= mysql_query("SELECT * FROM `login_users` WHERE `username` = '$username' AND      `password` = '$password'");
    if(mysql_num_rows($sql) > 0)
    {
        echo ("<SCRIPT LANGUAGE='JavaScript'>
            window.alert('Login Succesfully!.')
            window.location.href='htmllogin.html'
            </SCRIPT>");
        exit();
    }
    else
    {
        echo ("<SCRIPT LANGUAGE='JavaScript'>
            window.alert('Wrong username password combination.Please re-enter.')
            window.location.href='htmllogin.html'
            </SCRIPT>");
        exit();
    }
}
else
{
}
?>

htmllogin.html

<html>
<head>
<body bgcolor="">
    <font>
        <center>
            <h1>Login</h1>
        </center>
    </font>
    <form action="login.php" method="POST">
        Username:<input type="text" name="uname">
        Password:<input type="password" name="pass"><br>
        <input type="submit" value="login" name="submit">
    </form>
</body>
</head>
</html>

------------感谢  http://i.stack.imgur.com/u33Fx.png

4 个答案:

答案 0 :(得分:0)

<?php
    require ('sql_connect.php');
    $username = $_POST['uname'];
    $password = $_POST['pass'];
    $sql= mysql_query("SELECT * FROM login_users WHERE username = '$username' AND password = '$password'");
    if(mysql_num_rows($sql) > 0)
    {
echo ("<SCRIPT LANGUAGE='JavaScript'>
        window.alert('Login Succesfully!.')
        window.location.href='htmllogin.html'
        </SCRIPT>");
    exit();
    }
    else{
     echo ("<SCRIPT LANGUAGE='JavaScript'>
        window.alert('Wrong username password combination.Please re-enter.')
        window.location.href='htmllogin.html'
        </SCRIPT>");
    exit();
    }
    }
    else{
    }
    ?>

答案 1 :(得分:0)

首先,我认为您的SQL语句中存在问题:

 "SELECT * FROM `login_users` WHERE `username` = '$username' AND      `password` = '$password'");

这里`错了。您应该删除它,因为列不使用它。

并且它也可能是apache需要知道使用php库。

LoadModule php5_module /usr/lib/apache2-prefork/libphp5.so

这是您必须在apache conf文件中放入的库源标签。您还可以使用以下命令测试您的wamp中的PHP:

 <?php
    phpinfo();
    phpversion();
  ?> 

如果PHP处于活动状态,则会为您提供版本,如果不是,则为PHP。

所以我觉得应该有所帮助。 马克

答案 2 :(得分:0)

请试试这个

$ sql = mysql_query(&#34; SELECT * FROM login_users WHERE username =&#39;&#34;。$ username。&#34;&#39; AND {{ 1}} =&#39;&#34;。$ password。&#34;&#39;&#34;);

或打印您的查询,然后直接在mysql中运行并检查您的查询是对还是

答案 3 :(得分:0)

因此,首先在表结构中不知道密码。因此,请检查列是否具有相同的令牌。 其次,sql查询没有给出返回值的结果:

mysql_query将为false。这就是第二个例外所解释的。

所以更正查询,列密码,(如果你发送列我可以为你查询)。 - 马克哈特曼