1

我不擅长 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

4 回答 4

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";
   }
于 2013-08-07T12:27:04.943 回答
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语句。

于 2013-08-07T12:26:38.163 回答
0

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

于 2013-08-07T12:26:58.807 回答
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";
}
于 2013-08-07T12:28:13.917 回答