没有从数据库php返回数据

时间:2016-07-19 09:09:15

标签: php

这段代码出了什么问题?

  $query = "select * from user where email= '$email'";

if( mysql_num_rows( $query )==0 ){
    echo '<tr><td colspan="4">No Rows Returned</td></tr>';

  }else{
    while($row = mysql_fetch_assoc( $query ) ) {
        $id=$row['id'];
        echo"yolo";

}

我的数据库中有电子邮件,但它返回

 No rows returned

为什么?

4 个答案:

答案 0 :(得分:1)

您必须执行查询。 mysql_num_rows()mysql_fetch_assoc()的参数必须是mysql_query()返回的结果。

$result = mysql_query($query) or die(mysql_error());
if (mysql_num_rows($result)) ==0 ){
    echo '<tr><td colspan="4">No Rows Returned</td></tr>';

} else {
    while($row = mysql_fetch_assoc( $query ) ) {
        $id=$row['id'];
        echo"yolo";
    }
}

答案 1 :(得分:1)

警告

此扩展在PHP 5.5.0中被弃用,https://api.coinbase.com/v2/users/:user_id 并且已在PHP 7.0.0中删除。相反,应该使用MySQLi或enter code here扩展名。

另请参阅MySQL:选择API指南和相关常见问题解答以获取更多信息。

使用msqli

PDO_MySQL

了解有关mysqli的更多信息

http://php.net/manual/en/book.mysqli.php

答案 2 :(得分:0)

试试这个

  $query = "select * from user where email= '$email'";
  $query = mysql_query($query);
 if( mysql_num_rows( $query )==0 ){
 echo '<tr><td colspan="4">No Rows Returned</td></tr>';

 }else{
   while($row = mysql_fetch_assoc( $query ) ) {
    $id=$row['id'];
    echo"yolo";

 }

答案 3 :(得分:0)

你必须这样写: $ query = mysql_query(&#34; select * from user where email =&#39; $ email&#39;&#34;);

还阅读: The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead