我正在运行下面这段代码来从两个表(项目 - 列出所有项目)和类别(获取类别名称和查询类别表)中获取数据。我得到了无效的参数。
$items = mysql_query("SELECT * FROM account_items
WHERE acctname = '$acctname'")or die(mysql_error());
while ($rows = mysql_fetch_array($items)) {
$itemType = $rows['item_type'];
$itemid = $rows['id'];
foreach ($itemType as $item) {
$result = mysql_query("SELECT * FROM `$itemType `
WHERE network_id = '$itemid' ")or die(mysql_error());
echo $result;
}
}
我做错了什么?
答案 0 :(得分:0)
试试这个:
$items = mysql_query("SELECT * FROM account_items WHERE acctname = '$acctname'") or die(mysql_error());
while ($rows = mysql_fetch_array($items)) {
$itemType = $rows['item_type'];
$itemid = $rows['id'];
$result = mysql_query("SELECT * FROM `$item`
WHERE network_id = '$itemid' ")or die(mysql_error());
}
但你不能像你一样回应$ result,不管是数组
答案 1 :(得分:0)
我能够通过使用以下代码解决问题:删除foreach并创建嵌套的while循环。
$items = mysql_query("SELECT * FROM account_items WHERE acctname = '$acctname'")or die(mysql_error());
while ($rows = mysql_fetch_array($items)) {
$itemType = $rows['item_type'];
$itemid = $rows['id'];
$result = mysql_query("SELECT * FROM `$itemType` WHERE network_id = '$itemid' ")or die(mysql_error());
while ($res = mysql_fetch_array($result)) {
echo json_encode($res);
}
}