Where子句的M​​ySQL语法

时间:2013-08-07 12:24:05

标签: php

我不擅长PHP。我有一个Web应用程序,显示MySQL数据库中的数据。我没有得到任何错误,但我需要获取我想要的数据。

离。代码。

<?php
$dbhost = 'localhost';
$dbuser = 'user';
$dbpass = 'password';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
$token = $_GET['token'];

if(! $conn )
  {
    die('Could not connect: ' . mysql_error());
  }
$sql = "SELECT * FROM table WHERE token = '" . $token . "'";

mysql_select_db('database');
$retval = mysql_query( $sql, $conn );
if(! $retval )
  {
    die('Could not get data: ' . mysql_error());
  }

 while($row = mysql_fetch_array($retval, MYSQL_ASSOC))
   {
     //Displays the data
   echo "The Token is here";
   }

  mysql_close($conn);
  ?>

我这里没有错误。但是我需要做一些事情,如果令牌数据还没有添加到表中,那么我会发出一条回复消息,比如......“这里还没有添加令牌”。我可以在哪里放置语法?请帮我。我是php的新手。

4 个答案:

答案 0 :(得分:3)

使用此:

 if(mysql_num_rows($retval)) {
     while($row = mysql_fetch_array($retval, MYSQL_ASSOC))
     {
      //Displays the data
      echo "The Token is here";
     }
   } else {
     echo "The token is not yet added here";
   }

答案 1 :(得分:1)

尝试mysql_num_rows喜欢

$sql = "SELECT * FROM table WHERE token = '" . $token . "'";
mysql_select_db('database');
$retval = mysql_query( $sql, $conn );
$num_rows = mysql_num_rows($retval);
if($num_rows < 1) {
    echo "The token is not yet added here";
} else {
    echo "Token already added";
}

并尝试避免使用mysql_*函数,因为它们已被弃用。请使用mysqli_*函数或PDO语句。

答案 2 :(得分:0)

使用mysql_num_rows()放置条件。如果该值为0,那么您可以显示消息The token is not yet added here或其他一些代码。

答案 3 :(得分:0)

尝试以下方式:

if(isset($_GET['token']))
{
if(! $conn )
  {
    die('Could not connect: ' . mysql_error());
  }
$sql = "SELECT * FROM table WHERE token = '" . $_GET['token'] . "'";

mysql_select_db('database');
$retval = mysql_query( $sql, $conn );
if(! $retval )
  {
    die('Could not get data: ' . mysql_error());
  }

 while($row = mysql_fetch_array($retval, MYSQL_ASSOC))
   {
     //Displays the data
   echo "The Token is here";
   }

  mysql_close($conn);
}
else
{
   echo "The token is not yet added here";
}