MySQL查询在PHPMyAdmin中成功,但在PHP脚本本身中不成功

时间:2014-06-18 22:38:18

标签: php mysql sql

在使用PHP查询时,我遇到了一些麻烦。这篇文章的标题解释了这个问题。当我在PHPMyAdmin中运行查询时,结果将与我在PHP程序本身中获得的结果不同。这是我正在使用的代码。对不起,如果看起来有点奇怪,我一直在切割和粘贴整个地方的东西,试图让它运转起来。

$connect = array('username'=>'root', 'host'=>'127.0.0.1', 'password'=>'');
$link = mysql_connect($connect['host'], $connect['username'], $connect['password']) or die('Error creating link: ' . mysql_error());
mysql_select_db('testing_pages', $link) or die('Error connecting to database: ' . mysql_error());
$sql = "SELECT `name` FROM `names`";
$query = mysql_query($sql, $link) or die('Query Failed! Check error:<br/><br/>' . mysql_error());
$query_2 = mysql_fetch_array($query);
$query = $query_2;
$loop = count($query);
$count = 0;

while($count <= $loop) {
    echo $query[$count] . '<br/>';
    $count++;
    }

看,我试图让它做的是读取所有名称,将其弹出到一个数组中,然后用while循环打印出来。但它似乎只返回1个结果,这就是数据库中的第一个名称。但是当我通过phpmyadmin运行EXACT查询时,它将返回数据库中的每个名字...另一个奇怪的事情,当使用&#39;计数&#39;获取数组中值的数量的函数声称有3个值,但在循环中它只打印出第一个名称,然后在第二个名称中返回一个未定义的索引&#39;。

希望我现在看起来不像一个菜鸟......我希望我能很好地解释一切。感谢任何可以提供帮助的人。

1 个答案:

答案 0 :(得分:3)

mysql_fetch_array以数组的形式提取一行。 Here are the docs

当您阅读文档时,请注意页面顶部的重要警告信息......