gpt4 book ai didi

php - 传递给 foreach() 循环的参数无效?

转载 作者:行者123 更新时间:2023-11-28 20:57:56 24 4
gpt4 key购买 nike

我在 display.php 中收到以下错误 **警告:为 foreach() 提供的参数无效。我试图在显示函数中循环遍历这些数字,并从 Main 中为每个数字生成图像。当我 echo display.php 时,它输出 nums[0]=$displayidnums[1]=$displayid,我想将 $displayid 传递到我的查询语句中。

generate_numbers()

 var rndNums = new Array(16,17,18,19,20,21,22,23,24,25,26,27,28);
var generate_numbers = function()
{
for(var i=0; i < 13; i++)
{
var idx = Math.floor(Math.random()*rndNums.length);
var rndNum = rndNums[idx];
rndNums[idx] = rndNums[rndNums.length - 1];
rndNums.pop();
document.getElementsByName("nums[]").item(i).value=rndNum;
}
}

Display.php

$nums = isset($_POST['nums']); // array
foreach($nums as $key => $displayid)
{
echo 'nums['.$key.']='.$displayid."<br>\n";
}


$stmt->bind_param("i", $displayid);
$stmt->execute();
$stmt->bind_result($image);
$stmt->fetch();
header("Content-Type: image/jpeg");
echo $image;
?>
<小时/>

Main.html

<form id="numberForm" action="display.php" method="POST">
<input type="hidden" name="nums[]">
<input type="hidden" name="nums[]">

</form>
<button onClick="generate_numbers();document.getElementById('numberForm').submit()">submit</button>

最佳答案

$nums = isset($_POST['nums']); // array

返回一个 bool 值(无论变量是否设置)而不是一个数组。

也许您正在尝试这样做:

$nums = isset($_POST['nums']) ? $_POST['nums'] : array(); // array

另外,请注意,您不应该在图像数据之前回显文本,否则会破坏您的响应。查询中的 $display_id 将是循环中的最后一个

关于php - 传递给 foreach() 循环的参数无效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11717268/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com