androidからphpにarraylistを送信しています。古いメニュー名を新しいメニュー名に置き換えたい。私のテーブルには2つの列が含まれています1.menuimage2.menuname..新しいmenunamesだけを更新したい
私のテーブル構造
test(table name)
menucode menuimage menuname
1 image p
2 " q
3 " r
4 " s
5 " t
menucodeに従ってmenunameのみを更新したい...menucode[1,2,3,4,5,6,7]を渡しています...
<?php
$old_menu_code = explode(",", str_replace(array("[","]"), "", $_POST['menucode']));
$new_menu_names = explode(",", str_replace(array("[","]"), "", $_POST['editmainmenu']));
mysql_connect("localhost", "root", "root");
mysql_select_db("test");
foreach ($old_menu_names as $key => $old_name) {
$new_name = mysql_real_escape_string($new_menu_names[$key]);
$old_code = mysql_real_escape_string($old_menu_code[$key]);
mysql_query("UPDATE `test` SET `menuname` = '$new_name' WHERE menucode= '$old_code'") or die('Error' . mysql_error());
echo "Updated";
}
?>
上記のコードテストは、データベースにテストテーブルが含まれています。テストテーブルには、menuimageとmenunameの2つの列が含まれています。menuimageには7つの画像が含まれ、menunameには7つのmenunmaesが含まれます。menuinamesだけを更新したい。ただし、上記のコードでは、最初の行のmenunames列のみが更新されます。残りの行は更新されません..私が行った間違いを教えてください