0

帮助!我有一个嵌套记录集,即问题和答案以及每个问题的相应复选框。如何更新记录集中的多个值?我应该循环更新查询吗?任何帮助将不胜感激。

这是我的代码:

<?php
mysql_select_db($database_iexam, $iexam);
$query_Recordset1 = "SELECT * FROM exam_questions WHERE question_exam_id = '$exam_id'";
$Recordset1 = mysql_query($query_Recordset1, $iexam) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);

do { ?>
    <tr>
        <th width="170" scope="col">
            <input type="checkbox" name="checkbox"
                   value="<?php echo $row_Recordset1['question_id']; ?>"/>
            Question:
        </th>
        <td colspan="2" scope="col">
            <input name="textfield" type="text"
                   value="<?php echo $row_Recordset1['question_description']; ?>"
                   size="50"/></td>
        <td width="549" colspan="2" scope="col"></td>
    </tr>
    <tr>
        <td>Answers:</td>
    <?php
    mysql_select_db($database_iexam, $iexam);
    $query_Recordset2 = "SELECT * FROM exam_answers WHERE answer_question_set_id = '" . $row_Recordset1['question_id'] . "'";
    $Recordset2 = mysql_query($query_Recordset2, $iexam) or die(mysql_error());
    $row_Recordset2       = mysql_fetch_assoc($Recordset2);
    $totalRows_Recordset2 = mysql_num_rows($Recordset2);

    do { ?>
        <tr>
            <td width="170">&nbsp;</td>
            <td colspan="2">
                <input name="textfield2" type="text" size="20"
                       value="<?php echo $row_Recordset2['answer_description']; ?>"/>
                <input
                    name="<?php echo $row_Recordset2['answer_question_set_id']; ?>"
                    type="radio"
                    value="<?php echo $row_Recordset2['answer_iscorrect']; ?>"/>
            </td>
        </tr>
    <?php } while ($row_Recordset2 = mysql_fetch_assoc($Recordset2)); ?>
<?php } while ($row_Recordset1 = mysql_fetch_assoc($Recordset1)); ?>
4

1 回答 1

0

您可以为 question_id 设置复选框名称,如 name="checkbox[]" 为 question_description 和 name="textfield[]" 最后,当您提交此表单时,您将获得此记录的数组,然后您设置一个 for 循环以分开值并将其更新到数据库或任何地方

于 2013-08-27T07:47:42.420 回答