我有一份ID列表。对于测试,这是大约20项。
现在我想创建一个循环并从另一台服务器获取额外的数据。在这台服务器上,我准备了一个脚本 - 当你发送一个项目ID时,它将以JSON格式发回更多细节。
while($row = mysql_fetch_array($result)){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://test.mysite.abc/call/itemdetail/id/".$row['id_item']);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$ret = curl_exec ($ch);
curl_close ($ch);
$result = json_decode($ret, true);
print_r($result);
vecho "<br>";
}
当我继续使用mysite.abc时,我会在给出项目ID时看到结果。但是当我运行脚本时,我有1个结果或3个结果和消息:
警告:mysql_fetch_array()期望参数1是资源,数组 在第65行的C:\ wamp64 \ www \ testfile.php中给出
我该怎么做?
答案 0 :(得分:1)
检查mysql_query
返回了有效的resource类型。
$result = mysql_query('SELECT column1, column2 FROM table WHERE 1=1'); // Change the SQL query with your
if ($result) {
while($row = mysql_fetch_array($result)){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://test.mysite.abc/call/itemdetail/id/".$row['id_item']);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$ret = curl_exec ($ch);
curl_close ($ch);
$result = json_decode($ret, true);
print_r($result);
echo "<br>";
}
}
最佳做法:,避免使用mysql_ *扩展名。此扩展在PHP 5.5.0中已弃用,并且已在PHP 7.0.0中删除。相反,请使用MySQLi或PDO_MySQL扩展。
考虑为您的案例使用多卷曲。查看此answer了解更多详情。
<强> Cheerse !! 强>