在数组中保存表单的内容

时间:2012-05-30 06:53:28

标签: php arrays forms

我有一个表单,其中列出了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并且不知道如何解决这个问题......

3 个答案:

答案 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开始(因为你是德语)。