0

这个问题就解决了。代码如下。

目前我有一段代码是这样的:

while ($query…) {
<checkbox form named "rating"> <submit button for "rating">
} 

所有这些,x20。x20 由变量确定$rpp(每页的结果。代码中没有显示,因为它与问题无关)。每个表单都有各自的“ submit”按钮。

我想要实现的是,我想给checkboxradio按钮所有个人的名字,所以我可以在while循环之外有提交按钮,而不是我现在拥有的,这意味着,submit所有x20复选框/收音机只有一个按钮按钮形式。

例如checkbox_0checkbox_1...

我唯一的问题是,我如何实现这一目标?我在哪里玩我的submit按钮?我也在问正确的问题吗?如果我听起来有点含糊,我深表歉意。如果您有问题,请提出,我会回答。

我在下面的代码中试了一下。看来这不是很多人的做法,所以我的大部分谷歌搜索都没有发现任何太有用的东西,尽管我确实知道从哪里开始。有人可以给我一些指导吗?

<?

if (isset($_POST['formSubmit'])){
  $j = 1;
  while ($j < $_GET['rpp']) {
    $rating = mysql_real_escape_string($_POST['rating'.$j]);
    $accountID = $_POST['accountID'.$j]; 

    mysql_query("UPDATE Spreadsheet SET rating='$rating' WHERE accountID='$accountID'");
    $j++;
  }
}

$k = 1; ?>

<form name ="rating" method ="POST" action ="" > <?
while($row = mysql_fetch_array($query)){  

    // Drop-down menu

    $values = array('0 - No rating','1 - Very Bad','2 - Bad','3 - Average','4 - Above Average');

    echo "<input type = \"hidden\" name = \"accountID" . $k . "\" value = \"" . $row['accountID'] . "\" >";
    for($i = 0; $i < count($values); $i++){ ?>
          <input type="radio" name="rating<? echo $k; ?>" value="<?php echo $values[$i]; ?>" id="rbl_0" <? if($row['rating'] == $i) echo "checked='checked'"; ?>/>
          <? echo $values[$i] ?> <br> <? 
        }

$k++;
} ?>

 <input type ="Submit" name ="formSubmit" value ="Submit and Next Page" />
 </form> <?

编辑:此时此代码的输出显示每个表单字段的单独提交按钮。我想要实现的是为所有表单域设置一个提交按钮。

编辑2:想通了!最终编辑是我的做法。对于将来可能会偶然发现这个问题的其他人。

4

1 回答 1

0

试试这个:你想把你的表单声明移到你的 while 循环之外。这也意味着您想将提交按钮移到 while 循环之外。里面的所有东西都可以保持不变,因为您的单选按钮在每个 while 循环迭代中都有唯一的名称,并且在每个 for 循环迭代中分组。

<form name ="rating" method ="POST" action ="" > 
<?php
while($row = mysql_fetch_array($query)){ 
  $values = array('0 - No rating','1 - Very Bad','2 - Bad','3 - Average','4 - Above    Average'); ?>
  echo "<input type = \"hidden\" name = \"accountID" . $k . "\" value = \"" . $row['accountID'] . "\" >";
  for($i = 0; $i < count($values); $i++){ ?>
      <input type="radio" name="rating<? echo $k; ?>" value="<?php echo $values[$i]; ?>" id="rbl_0" <? if($row['rating'] == $i) echo "checked='checked'"; ?>/>
      <? echo $values[$i] ?> <br> <? 
    } ?>
 } ?>
 <input type ="Submit" name ="formSubmit" value ="Submit" />
</form> 
于 2012-12-19T16:27:35.543 回答