我有一个表单,其中列出了SQL数据库中的名称。每个名称后面都有一个成绩的文本字段。我希望将成绩和名称保存在数组中。它已经与名称一起使用,但是成绩的数组只是填充了最后一个文本字段中的内容。
$Requete = "SELECT `vorname`, `nachname` FROM `lernende`";
$Result = mysql_query($Requete,$db);
$grade = array();
$vorname = array();
$nachname = array();
$counter = 0;
while($row = mysql_fetch_array($Result))
{
echo '<p>', $row["vorname"]," ", $row["nachname"], " ", '<label>Note: <input type="text" name="note"/></label></p>';
$grade[$counter] = $_POST['note'];
$vorname[$counter] = $row["vorname"];
$nachname[$counter] = $row["nachname"];
$counter = $counter + 1;
}
我的代码出了什么问题?我刚刚开始学习php并且不知道如何解决这个问题......
答案 0 :(得分:0)
为成绩字段指定不同的名称,或将其命名为数组:<input name="note[]">
答案 1 :(得分:0)
在你的代码中你有$ _POST ['note'],每行重复一次, 对于名称字段和注释,您应该附加$ counter来区分这些输入字段。
答案 2 :(得分:0)
你需要改变这行代码:
echo '<p>', $row["vorname"]," ", $row["nachname"], " ", '<label for="note-'.$counter.'">Note:</label> <input id="note-'.$counter.'" type="text" name="note[]"/></label></p>';
然而,你的代码并不是我所说的最好的代码。开始学习如http://php.net/array所示使用数组,并按照http://de.selfhtml.org/所述的干净HTML开始(因为你是德语)。