选择“来自查询”,其中用户标识导致错误

时间:2014-03-23 16:16:46

标签: php

我真的很困惑在我想要匹配用户的查询中应该是什么号码。最初我有usersid = 1&#34 ;;但是我的老师要我将数字改为0我做了这个,现在我只是收到错误,数字必须等于0或者我错过了一段代码。

$query="SELECT * FROM login WHERE usersid=0";
    $result=mysql_query($query);
    $r=mysql_fetch_array($result);
    echo $r["firstname"];
    echo " ";
    $usersid=$r["usersid"];
    echo "<br>";

2 个答案:

答案 0 :(得分:1)

在尝试回复之前,您应该检查是否有任何行。

   $query="SELECT * FROM login WHERE usersid=0";                                                                                                                                                               
                    $result=mysql_query($query);
    if (!$result)
    {
        die('Invalid query: ' . mysql_error());
    }

    if( mysql_num_rows($result) > 0)
    {                                                            
                    $r=mysql_fetch_array($result);
                    echo $r["firstname"];                                                                                                                                           
                    echo " ";                                                                       
                    $usersid=$r["usersid"];                                                                     
                    echo "<br>";
    }
    else 
    {
      echo "nothing found";
    }

答案 1 :(得分:-2)

如果您想从userid表中获取login最低的用户,请使用:

SELECT * FROM login ORDER BY usersid LIMIT 1

老师应该告诉你的其他一些事情是:

  1. mysql_函数已弃用且将被删除,因此您应该使用mysqli_代替类似于use或PDO的内容 - 更高级和更强大,但同时您将节省一些精力处理propper变量转义以防止对您的应用程序进行SQL注入攻击。
  2. 在您的应用中执行一些错误处理