私のコードをうまく動作させるのに苦労しています。私は基本的な考え方を理解していますが、それを働かせることはできません。爆縮を使用して複数の行を挿入する
<form action="multiscript.php" method="post" id="form">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><input type="text" name="field_PK[]" id="field_PK" /></td>
<td><input type="text" name="sql_fk[]" id="sql_fk" /></td>
<td><input type="text" name="account_fk[]" id="account_fk" /></td>
<td><input type="text" name="field_code[]" id="field_code" /></td>
<td><input type="text" name="field_name[]" id="field_name" /></td>
<td><input type="text" name="field_px[]" id="field_px" /></td>
<td><input type="text" name="field_order[]" id="field_order" /></td>
</tr>
<tr>
<td><input type="text" name="field_PK[]" id="field_PK" /></td>
<td><input type="text" name="sql_fk[]" id="sql_fk" /></td>
<td><input type="text" name="account_fk[]" id="account_fk" /></td>
<td><input type="text" name="field_code[]" id="field_code" /></td>
<td><input type="text" name="field_name[]" id="field_name" /></td>
<td><input type="text" name="field_px[]" id="field_px" /></td>
<td><input type="text" name="field_order[]" id="field_order" /></td>
</tr>
</table>
<input type="submit" name="button" id="button" value="Submit" />
</form>
私はその後、私は私のmysqlデータベースに複数の行を挿入したいフォームを処理するためのスクリプトを持っている:私は、複数の行を持つフォームを持っています。
INSERT INTO `Table_fields` (field_PK, sql_fk, account_fk, field_code, field_name, field_px, field_order) VALUES (,,,,,,),(,,,,,,),(,,,,,,),(,,,,,,),(,,,,,,),(,,,,,,),(,,,,,,),(S,S,S,S,S,S,S)
誰かが私のフォームとスクリプトの上に見て、私に教えてくださいすることができ:私はときに私「印刷」私はこれを取得するクエリがあるため何か問題がある知っている
<?php
$values = array();?>
<?php
foreach($_POST as $row) {
$values[] = "(" . $row['field_PK'] . "," . $row['sql_fk'] . "," . $row['account_fk']. "," . $row ['field_code']. "," . $row['field_name']. "," . $row['field_px']. "," . $row['field_order'].")";
}
if(!empty($values)) {
$query = "INSERT INTO `Table_fields` (field_PK, sql_fk, account_fk, field_code, field_name, field_px, field_order) VALUES ". implode(',',$values);
mysql_query($query);
}
?>
:私のスクリプトは次のようになります私が間違ってやっていること、なぜimplodeメソッドを使ってデータベースに複数の行を挿入していないのか。ありがとうございました。
警告:array_map()[function.array-map]:引数9は、/ nfs /にある配列でなければなりません。 c06/h04/mnt/95658/domains/bc.wf-realty.com/html/contacts/multiscript.php on line 5 警告:/ nfs/c06/h04/mnt/95658のforeach()に無効な引数が指定されています。 /domains/bc.wf-realty.com/html/contacts/multiscript.php on line 11 – user982853
@ user982853「foreach」を変更して、キーと値のペアを使用します。これを反映する答えを更新しました。 – Farray