我有一个简单的表“考试”,列id,标题和一个表单的可变数量的考试输入字段。
但是当提交表单时,最后一个值将被保存三次。
我认为这是因为具有相同值的$sql_insert语句。
如何更改在该$sql_insert语句中提交的不同值的代码?
echo '<form action="" method="post">';
for ($i = 1; $i <= $student['passed_exams']; ++$i) {
echo '<label>Exams '.$i.' :</label>';
echo '<input type="text" id="id['.$i.']" name="title" placeholder="passed Exam" />';
echo '<br />';
}
echo '<input type="submit" value=" Submit " name="submit" /></form>';
if (isset($_POST['submit'])) {
for ($i = 0; $i < $student['passed_exams']; ++$i) {
$sql_insert = "INSERT INTO exams (title) VALUES ('".$_POST['title']."')";
$dbConnection->query($sql_insert);
}
$dbConnection->close();
}发布于 2016-05-11 16:24:59
Php需要名称作为数组
echo '<form action="" method="post">';
for ($i = 1; $i <= $student['passed_exams']; ++$i) {
echo '<label>Exams '.$i.' :</label>';
echo '<input type="text" id="id['.$i.']" name="title['.$i.']" placeholder="passed Exam" />';
echo '<br />';
}
echo '<input type="submit" value=" Submit " name="submit" /></form>';
if (isset($_POST['submit'])) {
for ($i = 0; $i < $student['passed_exams']; ++$i) {
$sql_insert = "INSERT INTO exams (title) VALUES ('".$_POST['title'][$i]."')";
$dbConnection->query($sql_insert);
}
$dbConnection->close();
}发布于 2016-05-11 16:25:42
首先,您需要将标题数组作为
name="title['.$id.']"那么你必须把它保存为
$_POST['title'][$id]https://stackoverflow.com/questions/37168215
复制相似问题