需要有关 mysql_fetch_array() 错误的帮助?
Posted
技术标签:
【中文标题】需要有关 mysql_fetch_array() 错误的帮助?【英文标题】:Need help with mysql_fetch_array() error? 【发布时间】:2011-07-16 03:44:05 【问题描述】:当我尝试运行这段代码时,我得到了错误:
“警告:mysql_fetch_array() 期望参数 1 是资源,给定字符串”
我一直在尝试调试它,但我似乎无法。
它连接到一个有 6 个字段的表:
id (int) |名称 (varchar) |图像 (BLOB) |说明(文字)|网址(文本)|关键词(文字)
谁能尝试解决这个问题?!?!?!
函数写在下面....
function get_images()
$limit = 5;
$count = 0;
$row = mysql_fetch_array("SELECT * FROM images");
echo "<table border='1'>";
while($row)
$img = $row['name'];
if ($count < $limit)
if($count == 0)
echo "<tr>";
echo "<td>$img</td>";
else
$count = 0;
echo "</tr><tr><td>$img</td>";
$count++;
echo "</td></table>";
【问题讨论】:
看来您是 php 新手。请consider learning the modern PDO database functions 而不是旧的和破坏的“mysql”功能。 有人向mysql函数寻求帮助,你感到惊讶吗?!你在打广告?!我不明白标题。我可以推荐你到这个网站:english.stackexchange.com 吗? @Alin Purcaru 您清楚地了解问题所在,您清楚地了解 Rahulpwns 的该功能存在问题,我认为这里不适合指出这一点,而是使用您的声誉进行编辑标题。 【参考方案1】:mysql_fetch_array 期望参数 1 是一个有效的 mysql 查询对象。
所以,先调用 mysql_query。
$query = mysql_query("SELECT * FROM images");
$row = mysql_fetch_array($query);
【讨论】:
【参考方案2】:$query = mysql_query("SELECT * FROM images");
while ($row = mysql_fetch_array($query))
do_something();
【讨论】:
【参考方案3】:你用错了:
$result = mysql_query("SELECT * from images");
$row = mysql_fetch_array($result);
然后做你需要的......
【讨论】:
【参考方案4】:你向 mysql_fetch_array() 传递了错误的参数
function get_images()
$limit = 5;
$count = 0;
$resource = mysql_query("SELECT * FROM images"$res);
$row = mysql_fetch_array($resource );
echo "<table border='1'>";
while($row)
$img = $row['name'];
if ($count < $limit)
if($count == 0)
echo "<tr>";
echo "<td>$img</td>";
else
$count = 0;
echo "</tr><tr><td>$img</td>";
$count++;
echo "</td></table>";
【讨论】:
【参考方案5】:你的错误在这里:
$row = mysql_fetch_array("SELECT * FROM images");
你需要这样做:
$sql = "SELECT * FROM images";
$res = mysql_query ($sql);
$row = mysql_fetch_array($res);
问题是您尝试以不正确的方式发送查询,首先您需要使用返回“资源”的 mysql_query 执行查询,然后使用该资源并使用 mysql_fetch_array 提取信息。
希望这会有所帮助:)
【讨论】:
【参考方案6】:DB的连接在哪里?你应该这样使用;
$result = msql_query('SELECT id, name FROM people', $con);
if (!$result)
die('Query execution problem: ' . msql_error());
while ($row = msql_fetch_array($result, MSQL_ASSOC))
echo $row['id'] . ': ' . $row['name'] . "\n";
【讨论】:
以上是关于需要有关 mysql_fetch_array() 错误的帮助?的主要内容,如果未能解决你的问题,请参考以下文章
从mysql转换为mysqli(mysql_fetch_array)[重复]
php while循环和foreach循环 mysql_fetch_array()
什么改变了循环中的条件:while (mysql_fetch_array($var))?
登录脚本中的“警告:mysql_fetch_array() 期望参数 1 是资源,布尔值”