为什么我无法在PHP中回显数据库中的信息?

时间:2013-12-10 21:13:15

标签: php mysql

我试图回应数据库中的信息,但不知怎的,它只是不起作用。它只显示输出页面中的类别,但不显示数据库中的任何类别。

<?php
     $con = mysql_connect( 'localhost', 'USERNAME', 'PASSWORD' )
         or die(mysql_error());
     $db = mysql_select_db('bestluw_luckydog') 
         or die(mysql_error());
     $sql = "SELECT * FROM Chihuahua";
     $query = mysql_query( $sql);


     while ( $info = mysql_fetch_array($query) );
    {
          echo '<b>Name:</b>' .$info['name'] . "<br>";
          echo '<b>Age:</b>' .$info['age'] . "<br>";
          echo '<b>Breed:</b>' .$info['breed'] . "<br>";
          echo '<b>Sex:</b>' .$info['he'] . "<br>";
          echo '<b>Color:</b>' .$info['color'] . "<br>";
          echo '<b>Size:</b>' .$info['size'] . "<br>";
          echo '<b>When:</b>' .$info['when'] . "<br>";
          echo '<b>Special:</b>' .$info['special'] . "<br>";
    }


   ?>

2 个答案:

答案 0 :(得分:4)

尝试删除

 while ( $info = mysql_fetch_array($query) );

从这一行。

如果你没有窃取输出 - 你的数据库表是空的。

了解PDO,mysql_query将在下一个PHP版本中弃用。

答案 1 :(得分:1)

while ($info = mysql_fetch_array($query)) //remove semicolon
    {
          echo '<b>Name:</b>' .$info['name'] . "<br>";
          echo '<b>Age:</b>' .$info['age'] . "<br>";
          echo '<b>Breed:</b>' .$info['breed'] . "<br>";
          echo '<b>Sex:</b>' .$info['he'] . "<br>";
          echo '<b>Color:</b>' .$info['color'] . "<br>";
          echo '<b>Size:</b>' .$info['size'] . "<br>";
          echo '<b>When:</b>' .$info['when'] . "<br>";
          echo '<b>Special:</b>' .$info['special'] . "<br>";
    }