PHP/mySQL For循环不总是运行,因此在DB中值保持不变
基本上,我有一个函数被调用来更新mysql中的表。问题是,即使它总是运行,有时它也不会修改它应该修改的值。。。i、 e如果for循环运行4次,它将运行3次并退出,因此其中1个值保持不变 职能:PHP/mySQL For循环不总是运行,因此在DB中值保持不变,php,mysql,Php,Mysql,基本上,我有一个函数被调用来更新mysql中的表。问题是,即使它总是运行,有时它也不会修改它应该修改的值。。。i、 e如果for循环运行4次,它将运行3次并退出,因此其中1个值保持不变 职能: function update_inventory(){ require_once 'admin_connect.php'; $mysqli_escape = function($str) use ($mysqli) { return my
function update_inventory(){
require_once 'admin_connect.php';
$mysqli_escape = function($str) use ($mysqli) {
return mysqli_real_escape_string($mysqli, $str);
};
$upc = array_map($mysqli_escape, $_POST['upc']);
for($i=0;$i<count($upc);$i++){
if($upc[$i] != ''){
$update_query = "UPDATE inventory SET inInv = inInv -1 WHERE UPC = '". $upc[$i] ."'";
$run_update = mysqli_query($mysqli,$update_query) or die(mysqli_error($mysqli));
$last_key = $last_key + 1;
}
}
$_SESSION['inventory_out'] = $last_key;
}
邮局在哪里
<div id="body">
<form action="includes/connection_functions.php" method="post">
<table for=record>
<th>Item Number</th>
<th for=c>UPC</th>
<?php
for($i=1; $i<=20; $i++){
echo '<tr>
<td>'.$i.'</td>
<td><input type="text" name="upc[]" value="" size="50" /></td>
</tr>
';
}
?>
</table>
<div for=select>
<select name="area">
<option value="Desayuno">Desayuno
</option><option value="Almuerzo">Almuerzo
</option><option value="Cena">Cena</option></select>
<input type="reset" value="clear" />
<input type="submit" value="submit" />
</div>
</form>
</div>
项目编号
UPC
德萨尤诺
阿尔穆尔佐
塞纳
是每次运行时都会发生这种情况还是仅在个别情况下发生?我们可以看到$\u POST['upc']]
中的内容吗?编辑以显示创建$\u POST['upc']的位置我想我看到了它。。。for($i=1;$i)您确定$upc的长度始终为四个元素,或者其中一个或多个元素不会返回空值吗?值得一提的是,“信任”用户输入通常是一个坏主意……您应该1)检查$upc的长度是否符合预期,2)清理数据以确保没有“杂散”被嵌入(如“\”;从清单中删除,其中1;)
<div id="body">
<form action="includes/connection_functions.php" method="post">
<table for=record>
<th>Item Number</th>
<th for=c>UPC</th>
<?php
for($i=1; $i<=20; $i++){
echo '<tr>
<td>'.$i.'</td>
<td><input type="text" name="upc[]" value="" size="50" /></td>
</tr>
';
}
?>
</table>
<div for=select>
<select name="area">
<option value="Desayuno">Desayuno
</option><option value="Almuerzo">Almuerzo
</option><option value="Cena">Cena</option></select>
<input type="reset" value="clear" />
<input type="submit" value="submit" />
</div>
</form>
</div>