使用するだけです:
name="item[]"
アイテム番号'
と
name="description[]"
<input type="text" name="item[]" /><input type="text" name="description[]" />
アイテムの説明フィールドとサーバー側で、両方を繰り返します。フロントエンドで、そのノードを何度も複製するスクリプトを作成するだけです。
編集
あなたが示したコードに基づいて、それは以下のコードのようなものでなければなりません:
if(isset($_POST['item']){
for($i = 0; $i < count($_POST['item']); $i++){
$number = $_POST['item'][$i];
$description= $_POST['description'][$i];
if ($stmt = $mysqli->prepare("INSERT items (number, description) VALUES (?, ?)"))
{
$stmt->bind_param("ss", $number, $description);
$stmt->execute();
$stmt->close();
}
}
あなたのJavaScriptで以下のようにしてください:
function addRow(){
document.getELementById('container').el.innerHTML += '<input type="text" name="item[]" /><input type="text" name="description[]" />' ;
}
HTMLコード:
<form name='myform' >
<div id="container">
<input type="text" name="item[]" /><input type="text" name="description[]" />
</div>
<p onclick="addRow() ;" >Add another item</p>
</form>
これがお役に立てば幸いです。
アップデート
これを試してください:
if(isset($_POST['item']){
if ($stmt = $mysqli->prepare("INSERT items (number, description) VALUES (?, ?)"))
{
for($i = 0; $i < count($_POST['item']); $i++){
$number = $_POST['item'][$i];
$description= $_POST['description'][$i];
$stmt->bind_param("ss", $number, $description);
$stmt->execute();
}
$stmt->close();
}