见鬼 当我尝试连接从数据库中拉出东西时,我收到以下错误:
Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in /home/content/49/5548763/html/matt/download.php on line 17
此网站上的其他答案均无效。
这是脚本:
<?php
$con = mysql_connect("XXXX", "name", "password");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
$db_selected = mysql_select_db("nameofdb",$con);
$musictable = "";
$sql = "GET * FROM matt";
$result = mysql_query($sql,$con);
while($row = mysql_fetch_object($result)) {
$id = $row->id;
$name = $row->name;
$update = $row->update;
$length = $row->length;
$size = $row->size;
$musictable .= "
<tr>
<td width=\"63%\">".$name."</td>
<td width=\"10%\">".$length." / ".$size."</td>
<td width=\"10%\"><a href=\"download.php?mp3=".$name."\">DOWLOAD</a></td>
<td width=\"17%\">|||||</td>
</tr>
";
}
?>
答案 0 :(得分:8)
那是因为您的查询错误。
$sql = "GET * FROM matt";
必须成为
$sql = "SELECT * FROM matt";
关于这一点的警告的基本措施是
if (!$result)
die("mySQL error: ". mysql_error());
发出查询后。
答案 1 :(得分:0)
也许尝试使用'SELECT'代替'GET'?
答案 2 :(得分:0)
$sql = "GET * FROM matt";
错了。正确的SQL语法是
$sql = "SELECT * FROM matt";
该错误传递到
$result = mysql_query($sql,$con);
然后无效,无法在while($row = mysql_fetch_object($result))
中使用。
您应该在mysql_error()
之后检查mysql_query()
以抓住这些内容。
答案 3 :(得分:0)
想要使用SELECT *
您也可以使用
mysql_query($sql, $con) or die("Error in $sql:" . mysql_error($con));
如果你不想使用die(),那么你可以使用echo来查看错误是什么,并至少帮助调试应用程序。