Php 警告:mysql_fetch_array()要求参数1为资源,给定布尔值
可能重复:Php 警告:mysql_fetch_array()要求参数1为资源,给定布尔值,php,Php,可能重复: 我有下面的PHP代码,但得到了这个错误。我尝试了不同的解决方案,但似乎不起作用。任何帮助都将不胜感激 <?php INCLUDE 'functions.php' ; $host = 'localhost'; $id = '***'; $pwd = '***'; $db = '****'; $myconnection = connect_db($host, $id, $pwd, $db); $SortOn = $_POST["SortOn"];
我有下面的PHP代码,但得到了这个错误。我尝试了不同的解决方案,但似乎不起作用。任何帮助都将不胜感激
<?php
INCLUDE 'functions.php' ;
$host = 'localhost';
$id = '***';
$pwd = '***';
$db = '****';
$myconnection = connect_db($host, $id, $pwd, $db);
$SortOn = $_POST["SortOn"];
$SortIn = $_POST["SortIn"];
$sql = "SELECT ID, DateTime, FirstName, LastName, AdditionalInformation, Category1, Category2, Category3, Category4, Category5, Pending, Approved, Disapproved, WebsiteName, WebsiteURL FROM 'websites' ORDER BY $SortOn $SortIn";
echo "<table border=\"1\"><tr><th>ID</th><th>Date & Time</th><th>First Name</th><th>Last Name</th><th>Additional Information</th><th>Category 1</th><th>Category 2</th><th>Category 3</th><th>Category 4</th><th>Category 5</th><th>Pending</th><th>Approved</th><th>Disapproved</th><th>Website Name</th><th>Website URL</th></tr>";
$result = mysql_query($sql);
while ( $row = mysql_fetch_array($result))
{
echo "<tr>";
for ( $column = 0;$column < count($row);$column++)
{
echo "<td>" . $row[$column] . "</td>";
}
echo "</tr>";
}
echo "</table>";
?>
这个变量$result
给了您一个布尔值(很可能它会返回一个False或类似的值,告诉您查询没有执行“良好”的操作)和一个不符合他预期的值
因此,您必须使用类似于mysql\u error()
的方法来检索原因并更正上述代码
编辑
看看你的代码,你错过了一个,
,在你的order by
字段中,发生错误时返回一个布尔值false。因此,看起来您必须修复您的查询。
您可以使用来找出错误所在。确保您也有有效的数据库连接。尝试连接数据库($host,$id,$pwd,$db)或死亡(mysql\u error())。另外,按照其他人的建议,在sql语句中使用die。使用mysql\u error()
找出您的查询出了什么问题更改行$result=mysql\u query($sql);to$result=mysql\u query($sql)或die(mysql\u error());好的,谢谢你们。我这样做了,得到的错误是:您的SQL语法有错误;查看与MySQL服务器版本对应的手册,以了解第1行“网站”按ID排序asc附近使用的正确语法。有趣的是,当我直接在MySQL上运行相同的查询时,它工作正常。它不应该。我想你需要从网站
而不是从“网站”如果我这样做,我会得到以下错误:注意:未定义的偏移量:15 inI stand corrected,它现在确实会产生结果,但也会在表的末尾永远添加错误,如注意:未定义的偏移量:15在C:\wamp\www\xxx\websiteRequests.php的第38行调用堆栈#时间内存函数位置1 0.0017 374328{main}()..\displaywebsiterequests.php:0看起来这是正确的路径,但我似乎可以找到放置此文件的位置。我尝试了不同的地方只是为了它,但它不断给出相同的错误。这让我发疯,尤其是当我基本上复制和粘贴了以前项目中的代码时,一切都很好。Puzzling@user1410474试图删除网站周围的单一配额,并在分组字段之间添加“?”?