我需要第二双眼睛。我有一个由数千个表组成的数据库,所有表都具有相同的结构。我正在选择每个表,然后从行中选择URL并检查URL是否返回良好的HTML。整个过程运行正常,然后运行OK,然后为while函数的后续实例返回一个布尔值。
除了第一个实例以外,我收到了这个错误,这个错误正好运行。
警告:mysql_fetch_array()期望参数1是资源, 在/home/toplist/public_html/config/index.php中给出的布尔值 1272
$result = mysql_query("SELECT `access_name` FROM `multiforums_forums`");
while ($names=mysql_fetch_array($result)) {
$acces = $names[access_name];
$get_urls = mysql_query("SELECT * from `".$acces."_users`");
while ($results=mysql_fetch_array($get_urls))
{
//this bit works fine
}
}
希望这是有道理的
答案 0 :(得分:2)
阅读mysql_query()
的手册页。如果查询失败,它将返回false
(布尔值)。在阅读您的问题时,可能就是这种情况。
您可以使用函数mysql_error()
从mysql获取最新的错误消息。因此,将代码更改为类似的内容,以查看错误消息:
$result = mysql_query("SELECT `access_name` FROM `multiforums_forums`");
if(!$result) {
die(mysql_error());
}
while ($names=mysql_fetch_array($result)) {
$acces = $names[access_name];
$get_urls = mysql_query("SELECT * from `".$acces."_users`");
if(!$get_urls) {
die(mysql_error());
}
while ($results=mysql_fetch_array($get_urls))
{
//this bit works fine
}
}
另外,您应该注意,不推荐使用PHP的mysql_ *扩展名。如果您不想尽快重写此代码,则不应将其用于新代码。请改用PDO或mysqli_*扩展程序。
答案 1 :(得分:0)
也许你的意思
$acces = $names['access_name'];