通过多个表单输入的 PHP 数组
Posted
技术标签:
【中文标题】通过多个表单输入的 PHP 数组【英文标题】:PHP array via multiple form inputs 【发布时间】:2012-09-22 14:11:40 【问题描述】:我有以下代码:
$query = "SELECT * FROM items WHERE SUBSTRING(item_no, 1, ".$length.") BETWEEN
'".$from_new."' AND '".$to_new."' ORDER BY item_no Desc";
$result = mysql_query($query);
$dd=array();
$ii=array();
$qq=array();
$aa=array();
if(mysql_num_rows($result)>0)
$num = mysql_num_rows($result);
?>
<form method="post" action="final_group_items.php">
<?php
echo "<table>";
for($i=0;$i<$num;$i++)
$row = mysql_fetch_array($result);
echo "<tr><td align=center>"; ?>
<input disabled maxlength="2" type="text"
name="ii[]" value="<?php echo strtoupper($row['item_no']); ?>"><?php echo
"</td><td align=center>";?>
<input disabled maxlength="2" type="text"
name="qq[]" value="<?php echo $row['qty'];?>">
<?php echo "</td><td align=center>"; ?>
<input disabled maxlength="2" type="text"
name="aa[]" value="<?php echo $row['actual_price'];?>">
<?php echo "</td><td align=center>";?>
<input required maxlength="2" type="text" name="dd[]" value="<?php echo
$row['discount_price']; ?>">
<?php
echo "</td><tr>";
echo "</table>";
?>
<input type="submit" value="Change Values">
</form>
现在,当我点击提交时,它将打开 final_group_items.php,其中包含以下测试代码,以确保所有数组 (ii,qq,dd,aa) 不为空:
if(empty($_POST['qq']))
echo "No value inside";
return false;
foreach($_POST['qq'] as $test)
echo $test;
return true;
所以通过测试所有数组,唯一有效的是 $_POST['dd']...其他输出“内部没有价值”,我真的不知道如何或为什么? 当我有多个具有唯一数组和值的字段时该怎么办。
谢谢
【问题讨论】:
因为其他人的输入标签中有disabled
?
@Jack 我尝试移除禁用,同样的结果!
你跳进/跳出 php 模式太多了。很多回声不需要从 php 模式内部完成...
@MarcB 对不起,我不是 php 专家。如果您能给我提供有关增强我的问题的网站教程,我将不胜感激!
你的echo "<table>"
是多余的。只有<table>
位于php 标记之外。不是在循环中,不是动态字符串,那为什么要在php模式下浪费cpu周期来输出呢?
【参考方案1】:
这个:
<input disabled maxlength="2" type="text" name="qq[]" value="<?php echo $row['qty'];?>">
甚至会阻止浏览器在提交表单时发布该字段,因为disabled
会获得"disabled"
的隐式值。
该属性应该被移除:
<input maxlength="2" type="text" name="qq[]" value="<?php echo $row['qty'];?>">
【讨论】:
你的意思是残疾人?我已经删除了 disabled 并对其进行了测试.. 结果相同。 @Alihamra 你刷新页面了吗? 你是对的,我已经在不同的浏览器上测试过它并且有效!非常感谢。以上是关于通过多个表单输入的 PHP 数组的主要内容,如果未能解决你的问题,请参考以下文章