我在启动PHP时不断获得为foreach()提供的无效参数。我主要在这里发帖,因为foreach的工作方式就像第一张桌子的魅力一样(如底部的URL所示)
<?php
//connect to MySQL
include("inc_connect_database.php");
//selet database
mysql_select_db("fo8(ell");
$query = "SELECT * FROM graphicscard " ;
$results = mysql_query($query)or die(mysql_error());
// DISPLAY RECORDS FROM THE graphicscard table
echo "<table border=\"1\">\n";
echo "graphicscard table" . "<BR/>";
echo "id | name | nvidia | AMD";
while ($row = mysql_fetch_assoc($results)) {
echo "<tr>\n";
foreach($row as $value) {
echo "<td>\n";
echo $value;
echo "</td>\n";
}
echo "</tr>\n";
}
echo "</table>\n";
// DISPLAY RECORDS FROM THE computertype table
$query = "SELECT * FROM computertype " ;
$results = mysql_query($query)or die(mysql_error());
// DISPLAY RECORDS FROM THE graphicscard table
echo "<table border=\"1\">\n";
echo "computertype table" . "<BR/>";
echo "id | label";
echo "<tr>\n";
foreach($row as $value) {
echo "<td>\n";
echo $value;
echo "</td>\n";
}
echo "</tr>\n";
echo "</table>\n"
?>
奇怪的是它......确切的foreach在第一个表创建中运行良好..但不是第二个。这就是我来这里的原因。下面的链接显示了第一个foreach如何正常工作。
答案 0 :(得分:0)
它不适用于第二个查询,因为你没有foreach之外的这个块:
while ($row = mysql_fetch_assoc($results)) {
//blah-blah
}
致电mysql_fetch_assoc
,它会起作用。