データベースのフィールドを更新したい。これは、データベースからレコードを取得してフォームに表示するコードです。
<form name="create_album" method="POST" action="" style="width:auto;">
<label for="First Name">Album Name</label>
<input type="text" name="album" id="album" placeholder="Album Name"value="<?php echo $album_name; ?>" />
<?php
$result = mysql_query("select * from user_uploads where album = '$album_name' ");
while($row=mysql_fetch_array($result))
{
?>
<img src="<?php echo $row['image_name']; ?>" height="140" width="140" />
<input type="text" name="des[]" value="<?php echo $row['image_description']; ?>" placeholder="Image Description Here"/>
<input type="text" name="id[]" value="<?php echo $row['id']; ?>" placeholder="Image Description Here"/>
<?php } ?>
<input type="submit" name="submit" value="Upload Album"/>
しかし、データベース内のレコードを更新したい場合、最後の入力フィールドの値ですべてのレコードをテーブルに更新します。これがphpコードです。
<?php
if(IsSet($_POST["submit"]))
{
$album = $_POST["album"];
$des=$_POST["des"];
foreach($_POST['id'] as $id)
{
$update_qry = "update user_uploads set album='$album', image_description='$des' where id = '$id' ";
$result_update_image = mysql_query($update_qry);
if (!$result_update_image)
{
header("location:create_album.php?errmsg=Album Not Updated");
}
}
}
}
?>
しかし、id に従ってテーブルで更新する des フォーム配列のすべての値を取得する方法がわかりません。