Javascript 将多行添加到数据库,而不是添加

Javascript 将多行添加到数据库,而不是添加,javascript,php,database,rows,Javascript,Php,Database,Rows,我在某个地方找到了这个脚本,可以在表单中添加行,我可以添加行,唯一的问题是当我提交它时,只提交第一行。以前从未尝试过这样的事情,所以我可能会完全放弃,如果是这样的话,至少我会知道这一点 这是HTML <form name="addshow" action="addshow.php" method="post"> <input type="submit" value="Lägg till"> <input type="reset" valu

我在某个地方找到了这个脚本,可以在表单中添加行,我可以添加行,唯一的问题是当我提交它时,只提交第一行。以前从未尝试过这样的事情,所以我可能会完全放弃,如果是这样的话,至少我会知道这一点

这是HTML

<form name="addshow" action="addshow.php" method="post">
       <input type="submit" value="Lägg till">
       <input type="reset" value="Nollställ"/>
       <script type="text/javascript"  src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.0/jquery.min.js"></script>
       <script type="text/javascript">
                $(document).ready(function() {
                    $("#add").click(function() {
                      $('#tableclassen tbody>tr:last').clone(true).insertAfter('#tableclassen tbody>tr:last');
                      return false;
                    });
                });
            </script>
            <a  id="add">+</a>
            <TABLE id='tableclassen' cellpadding="3" cellspacing="0">
                <TBODY>
                <TR valign="top">
                    <TD width>
                    <input type="text" placeholder="ID" name="Horse_id" required oninvalid="this.setCustomValidity('Ange ID')" oninput="setCustomValidity('')" size="5"/>
                    </TD>

                    <TD>
                    <input type="text" placeholder="Årtal" name="years" required oninvalid="this.setCustomValidity('Ange årtal')" oninput="setCustomValidity('')" size="6"/>
                    </TD>

                    <TD>
                    <input type="text" placeholder="Plac." name="place" required oninvalid="this.setCustomValidity('Ange placering')" oninput="setCustomValidity('')" size="4"/>
                    </TD>

                    <TD>
                    <input type="text" placeholder="Ange eventnamn" name="event" required oninvalid="this.setCustomValidity('Ange eventnamn')" oninput="setCustomValidity('')" size="35"/>
                    </TD>

                    <TD>
                    <input type="text" placeholder="Ange klass" name="class" required oninvalid="this.setCustomValidity('Ange klass')" oninput="setCustomValidity('')" />
                    </TD>

                    <TD>
                    <input type="text" placeholder="Assoc." name="association" required oninvalid="this.setCustomValidity('Ange Assoc.')" oninput="setCustomValidity('')" size="6"/>
                    </TD>

                    <TD>
                    <input type="text" placeholder="Poäng" name="points" required oninvalid="this.setCustomValidity('Ange poänh')" oninput="setCustomValidity('')" size="3"/>
                    </TD>

                    <TD>
                    <select name="type" required oninvalid="this.setCustomValidity('Välj typ')" oninput="setCustomValidity('')">
                        <option value="" disabled selected>Välj typ</option>
                        <option value="SWE">SWE</option>
                        <option value="INTER">INTER</option>
                    </select>
                    </TD>

                    <TD>
                    <select name="dis">
                        <option value="" disabled selected>Välj Dis</option>
                        <option value="D">D</option>
                        <option value="SJ">SJ</option>
                        <option value="E">E</option>
                        <option value="U">U</option>
                        <option value="K">K</option>
                        <option value="T">T</option>
                    </select>
                    </TD>
                </TR>
                </TBODY>
            </TABLE>

            </form>

$(文档).ready(函数(){
$(“#添加”)。单击(函数(){
$('#tableclassen tbody>tr:last').clone(true).insertAfter('#tableclassen tbody>tr:last');
返回false;
});
});
+
Välj类型
瑞典人
埋葬
Välj Dis
D
SJ
E
U
K
T
这是PHP/数据库过程

<?php
session_start();
ob_start();
include("function/conn.php"); //Databas koppling
mysql_set_charset("utf8");

$Horse_id = addslashes($_POST['Horse_id']);
$Year = addslashes($_POST['years']);
$Place = addslashes($_POST['place']);
$Event = addslashes($_POST['event']);
$Class = addslashes($_POST['class']);
$Assoc = addslashes($_POST['association']);
$Point = addslashes($_POST['points']);
$Type = addslashes($_POST['type']);
$Dis = addslashes($_POST['dis']);
//Sparar värden i variabler ifrån form


$result = mysql_query(" INSERT INTO shows 
                        (Horse_id, years, place, event, class, association, points, type, dis) 
                        VALUES('$Horse_id', '$Year', '$Place', '$Event', '$Class', '$Assoc', '$Point', '$Type', '$Dis') ") or die(mysql_error()); 
// Lägger in ny post i databasen

if ($result){ //Skicka tillbacka användaren till backend
header("location: admin.php");
}
else{
echo "Something went wrong.";
} 
?>

问题在于,您没有更改克隆输入的name'ed字段,而在大多数情况下,后端只接受最后一个字段


我在一个类似的主题中留下了一个示例:

给出表单字段数组样式名称,例如

<input type="text" placeholder="ID" name="Horse_id[]" required oninvalid="this.setCustomValidity('Ange ID')" oninput="setCustomValidity('')" size="5"/>


然后在PHP中,
$\u POST['Horse\u id']
将是所有输入的数组;服务器脚本可以循环遍历它们并将它们全部插入数据库中。如果您在所有行中使用相同的名称,而没有使用
[]
$\u POST['Horse\u id']
将只包含最后一个名称。

我试图理解该示例,但无法真正理解它。核心问题是,您已经尝试了两个答案,但它们似乎都不起作用,至少我无法让它们起作用。只要我尝试使用它们中的任何一个,都不会向数据库发送任何内容。我在wierd之前已经看到过,只要我将[]添加到字段中,使其成为数组样式,它就不会向数据库发送任何内容。