PHPにもう一度気付き、次の更新コードがあります。これは機能しますが、挿入された最後のものについてのみですか?すべてのgritem idについて更新する必要があります。私は一意ではないフォームフィールドに[]を追加すると、PHPは配列として解析することができますが、それはまだ1つのフィールドとして認識されますか?私が持っているPHPで同じフォーム名で複数の行を更新する
マイHTML:
<input type="hidden" name="gritemid[]" value="<?PHP echo $row2['gritemid']; ?>">
<input type="text" name="grqty[]" id="grqty[]" value="" />
次のPHPコード
if(isset($_POST['storageloc']))
{
//Set the GRQTY to subtract from the Orderqty on each item in the list if selected
// find out how many records there are to update
$size = count($_POST['gritemid']);
// start a loop in order to update each record
$i = 0;
while ($i < $size) {
// define each variable
$gritemid= $_POST['gritemid'][$i];
$grqty= $_POST['grqty'][$i];
if ($grqty > "0") {
// do the update and print out some info just to provide some visual feedback
$query = "UPDATE gr_items SET orderqty = orderqty - $grqty WHERE gritemid = '$gritemid' LIMIT 1";
mysql_query($query) or die ("Error in query: $query");
}
++$i;
}
mysql_close();
まず、print_r($ _ POST)を実行して、何を得ているかを確認します。明白なエラーは見られません。 id = "grqty []"は、IDが一意でなければならないため、削除する必要があります。しかし、あなたは何か起こっているjavascriptを持っていない限り、害を引き起こしてはいけません。 – Cerad