イメージアップロードフォームがあり、正常に動作します。データベースから特定のイメージを削除する[simple php/mySql]
しかし、同じフォームの下で、Xボタンをクリックして特定の画像を削除できる画像リストが必要です。 私はコードを書いていますが、それは動作しますが、どのXをクリックしてもリストの最初のイメージは常に削除されます。
<form method="post">
<ul>
<?php
$host = "127.0.0.1"; //database location
$user = ""; //database username
$pass = ""; //database password
$db_name = ""; //database name
if(!$link = mysql_connect($host, $user, $pass)) {
echo "<p>error: ".mysql_error()."</p>";
} else {
mysql_select_db($db_name);
}
$selectAll = "SELECT image_name FROM home_images";
$doIt = mysql_query($selectAll);
// if(isset($_POST['delete'])) {
// mysql_query("DELETE FROM home_images WHERE image_name = ");
// }
?>
<?php while($result = mysql_fetch_array($doIt)) : ?>
<li style="display:inline; margin-right:10px">
<img src="<?php bloginfo('url') ?>/wp-content/uploads/<?php echo $result[0]; ?>" height=50 width=60 />
<input type="hidden" value="<?php echo $result[0]; ?>" name="imagename" />
<input type="submit" value="X" name="delete" />
</li>
<?php endwhile; ?>
<?php
if(isset($_POST['delete'])) {
$imagename = $_POST['imagename'];
$deleter = "DELETE FROM home_images WHERE image_name = '$imagename'";
if(mysql_query($deleter)) {
echo "Successful!";
echo $imagename;
} else {
echo mysql_error();
}
}
?>
</ul>
</form>
私はここで間違っていますか?
削除するSQLクエリの直前にある '$ imagename'が正しいかどうかを確認し、それぞれの画像に正しいことを確認してください。 – Chaim