1

私はphpが苦手です。MySQL データベースからのデータを表示する Web アプリケーションがあります。エラーは発生していませんが、必要なデータをフェッチする必要があります。

元。コード。

<?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 に答える