PHP / MySQL Удаление изображений

0

это следует из этого вопроса, который я опубликовал вчера - мой вопрос со вчерашнего дня

Ответ, данный webbiedave, по-видимому, работал, но продолжал удалять последнее изображение в группе, а не выбранное через этот флажок. Когда я print_r($_POST);, ни одно из этих изображений не может быть найдено нигде в печатном массиве. Внутри страницы/формы у меня есть другие загрузки изображений и текстовые входы, которые все записываются в основную таблицу "isadmin", а print_r($_POST); отображает их все в порядке.

Кажется, что проблема с изображениями, которые вытягиваются из таблицы isgallery, и тем фактом, что они, кажется, изолированы от остальных элементов в форме и не собираются, когда $_POST['delGallery']=='1'.

Любая помощь очень ценится. S

Теги:

1 ответ

0
Лучший ответ

Если вы намерены удалить массив изображений, вы можете изменить свой код флажка:

<label for="delGallery<?php echo $galleryResult['id'] ?>"><input id="delGallery<?php echo $galleryResult['id'] ?>" type="checkbox" name="gallery_ids[]" value="<?php echo $galleryResult['id'] ?>" /> Delete this image?</label><br />

Теперь вам не нужен скрытый ввод, который у вас был в другом коде. PHP создаст для вас массив, поэтому в коде удаления вы можете сделать что-то вроде:

if (!empty($_POST['gallery_ids'])) {  
    foreach ($_POST['gallery_ids'] as $galleryId) {
        $sql = "DELETE FROM isgallery WHERE id = ".mysql_real_escape_string($galleryId);
        mysql_query($sql);
    }
}

Опять же, вы захотите убедиться, что используется надлежащий метод очистки/проверки/экранирования.

  • 0
    Большое, большое спасибо - сработало как мечта!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню