Ben sorun php kullanarak mysql veritabanından görüntüleri silerken yaşıyorum. Veritabanına görüntülerin eklenmesi harika çalışıyor, ve bu görüntüleri hiçbir sorun retieve / gösterecektir, ancak düzgün bunları silmez. Bu seçili görüntüyü, veritabanında her zaman ilk birini silmez. Ben çalıştığını biliyorum bu yüzden özel dosya adlarını ve id kullanarak test ettik, sadece seçilen görüntüyü hedef görünmüyor.
Galeri tablo oluşur: id, BinderName, assoc_table (kategori) & assoc_object (sayfa-görüntü-bağlı-için).
Bu anlamda ve önceden çok teşekkür yapar umuyoruz.
Bu görüntüleri eklemek ve görüntülemek için kullanılan kod:
$galleryQuery=mysql_query("select * from isgallery where assoc_object = '".$_POST['id']."'");
echo '<ul class="gallery">'. PHP_EOL;
while($galleryResult=mysql_fetch_array($galleryQuery)) {
echo '<li><img src="../../images/properties/gallery/'.$galleryResult['imagename'].'" alt="'.$galleryResult['id'].'" width="120" height="120" class="image" /><br />
<label for="delGallery"><input type="checkbox" name="delGallery" value="1" /> Delete this image?</label><br />
</li>
'. PHP_EOL;
}
echo '</ul><br /><br />' . PHP_EOL;
echo '<label for="galleryFile">Add Image (*.jpg / *.gif): </label><input type="file" name="galleryFile" value=""><br />
'.($_POST['imagename'] ? '
<label for="imagename"></label><img src="../../images/properties/gallery/'.$_POST['imagename'].'" width="120" class="image"><br />
<label for="delGallery"></label><input type="checkbox" name="delGallery" value="1" style="margin:0 0 0 7px;"> Delete this image?<br />
' : NULL).'
Bu veritabanından silmek için kullanılan kod:
if ($_POST['delGallery']=='1') {
file_exists($galleryFileDir.'/'.$_POST['imagename']) ? unlink($galleryFileDir.'/'.$_POST['imagename']) : NULL;
unset($_POST['imagename']);
$sql = "DELETE FROM isgallery WHERE imagename = '".$_POST['imagename']."'";
mysql_query($sql);
}