douyong4623 2013-08-28 05:41
浏览 53
已采纳

在mysql和php中使用foreach

I have two arrays the selected and questiondesc, I want to update it to the database but My code doesnt seem to work. Is it possible to do nested for each?

<?php do { ?>
    <tr>
        <th width="170" scope="col">
            <input type="checkbox" name="selected[]"
                   value="<?php echo $row_Recordset1['question_id'];?>"/>
            Description:
        </th>
        <td colspan="2" scope="col">old:
            <?php echo $row_Recordset1['question_description']; ?>
            new:<input name="questiondesc[]" type="text" size="50"/>/td>
        <td width="549" colspan="2" scope="col">
            <div align="left">
        </td>
    </tr>
<?php
} while ($row_Recordset2 = mysql_fetch_assoc($Recordset2));

if (isset($_POST['selected'])) {
    $selected = $_POST['selected'];
    $question = $_POST['questiondesc'];

    foreach ($selected as $enable) {
        mysql_query("
          UPDATE exam_questions
          SET question_description = '$question'
          WHERE question_id = '$selected'
        ") or die(mysql_error());
    }
}
  • 写回答

3条回答 默认 最新

  • dth54864 2013-08-28 05:46
    关注

    You could use a for instead and make sure to properly sanitize your data:

    for ($i = 0; $i < sizeof($selected); $i++)
    {
        $sql = sprintf("UPDATE exam_questions 
                           SET question_description = '%s' 
                         WHERE question_id = '%s'", 
               mysql_real_escape_string($question[$i]), 
               mysql_real_escape_string($selected[$i]));
        mysql_query($sql)or die(mysql_error());
    }
    

    Keep in mind that the above assumes that questions and selections are ordered the same.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 做个有关计算的小程序
  • ¥15 MPI读取tif文件无法正常给各进程分配路径
  • ¥15 如何用MATLAB实现以下三个公式(有相互嵌套)
  • ¥30 关于#算法#的问题:运用EViews第九版本进行一系列计量经济学的时间数列数据回归分析预测问题 求各位帮我解答一下
  • ¥15 setInterval 页面闪烁,怎么解决
  • ¥15 如何让企业微信机器人实现消息汇总整合
  • ¥50 关于#ui#的问题:做yolov8的ui界面出现的问题
  • ¥15 如何用Python爬取各高校教师公开的教育和工作经历
  • ¥15 TLE9879QXA40 电机驱动
  • ¥20 对于工程问题的非线性数学模型进行线性化