使用1(插入)按钮,我可以将HTML表中的多行数据插入到MySQL数据库表中吗?

时间:2014-09-18 19:29:10

标签: php html mysql mysqli

我随机生成了问题,并决定把它们放在临时表中。现在,它已经在我的html表中:                    

echo "<form action=# method=post>";
echo "<table>";
do{
echo "<tr>";
echo "<td>"."<input type=text value='$rows[question]' name=question>"."</td>;
echo "<td>"."<input type=text value='$rows[correct]' name=correct>"."</td>;
}while($rows=mysqli_fetch_array($rs));
echo "</table>";


echo "<input type=submit name=insert>";

echo "</form>";
?>
</body>
</html>

我想要发生的是,当我点击插入按钮名称=&#34;插入&#34;时,该表中的数据,[从第1行到最后一行]将被插入到我的数据库&#34 ; tbl_randomq&#34 ;.是否可以通过一次单击将多个行数据同时插入数据库。

我尝试使用while循环,但它只插入来自最后一行的重复(10次)数据。请帮忙: - )

1 个答案:

答案 0 :(得分:1)

do{
?>
<tr>
    <td><input type=text value='<?=$row["question"]?>' name='question[]'></td>
    <td><input type=text value='<?=$row["correct"]?>' name='correct[]'></td>    
</tr>
<?php
}while($row = mysqli_fetch_array($rs));

然后保存:

for ($i=0; $i<count($_POST['question']); $i++){
    $question = addslashes($_POST['question'][$i]);
    $correct = addslashes($_POST['correct'][$i]);
    mysqli_query("
                      insert into tbl_ramdomq (question, correct) 
                      values ('$question','$correct')
    "); 
}

根据需要将代码格式替换为您自己的格式。虽然对我自己而言,我更喜欢在html而不是echo中使用短的php标签,因为语法着色和更清晰。