【发布时间】: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周期来输出呢?
标签: php mysql arrays forms loops