将多个php表单数组插入mysql行

将多个php表单数组插入mysql行,php,mysql,Php,Mysql,我正在获取数据以创建一个表单,该表单稍后将通过php更新到各自的mysql行中。这是我到目前为止尝试过的,但它不起作用 $subj='1'; while($row=mysql_fetch_assoc($sql)) { $go=mysql_query("select 1ca from result where subject_id='$subj' and student_id='$row[id]'"); $ca=mysql_fetch_assoc($go); ?&g

我正在获取数据以创建一个表单,该表单稍后将通过php更新到各自的mysql行中。这是我到目前为止尝试过的,但它不起作用

$subj='1';
    while($row=mysql_fetch_assoc($sql))
    {
    $go=mysql_query("select 1ca from result where subject_id='$subj' and student_id='$row[id]'"); $ca=mysql_fetch_assoc($go);
    ?>
    <tr><td><input type="hidden" name="std_id[]" value="<?php echo $row['id']; ?> "/><?php echo $row['firstname']; ?> <?php echo $row['lastname']; ?></td>
    <td><input type="text" name="ca1[]" value="<?php echo $ca['1ca']; ?>"/></td></tr>
    <?php } ?>

我不完全理解这个问题,但这就是你想要的吗?结果数组的大小是否相同,它们之间的键是否匹配

if(isset($_POST['submit']))
{

    foreach($_POST['std_id'] as $key => $student)
    {
         mysql_query("update result set ca1='{$_POST['ca1'][$key]}' where student_id='$student'");
    }
}

问题是什么?你犯了什么错误。另外,
$row[id]
应该是
$row['id']
。顺便说一句,我需要能够将std_id[]和ca1[]插入多个记录的一行中。旁注:您还需要防止注入,并在mysql不推荐使用时使用mysqli。
if(isset($_POST['submit']))
{

    foreach($_POST['std_id'] as $key => $student)
    {
         mysql_query("update result set ca1='{$_POST['ca1'][$key]}' where student_id='$student'");
    }
}