Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
2 / 2 / 0
Регистрация: 20.12.2012
Сообщений: 52

Удаления файлов циклом

22.04.2013, 17:59. Показов 1406. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вот тут - Удалить отмеченные файлы решения моей проблемы. Там говорится об удалении файлов(циклом) с папки отмеченных чекбоксами, но мне нужно удалять записи из БД. Тут и вопрос. Ведь насколько я понимаю сколько раз выполнится цикл столько раз и будет обращения к БД. Объясните можно ли так делать, а если нет то как иначе.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
22.04.2013, 17:59
Ответы с готовыми решениями:

Вывод файлов и форма загрузки/удаления файлов работают на одной странице, а на другой в ячейках таблицы нет
Доброго времени суток. В общем ситуация следующая. В своем профиле пользователь загружает файлы, которые идут в пока в папку upload/ и...

Спам после удаления файлов с хостинга
Доброй ночи. Хотел сразу предупредить что в плане веб-разработки я новичок. Параллельно учебе, делаю простенькие сайты. ...

Удаления файлов из директории при нажатии кнопки удалить
Доброго времени суток! Помогите решить такую задачку: необходимо вывести на страницу файлы которые есть в каталоге, и возле названия файла...

8
1178 / 1128 / 94
Регистрация: 31.05.2012
Сообщений: 3,060
22.04.2013, 18:30
Там способ какой то странный.
Во первых всегда будет $value = delete.
Во вторых нет определения какой файл удалить.

Вам нужно в массиве передавать ID файла.
Хоть в value хоть в ключе.

то есть что то типа
HTML5
1
<input type="checkbox" name="del[]" value="<?php echo $id ?>"/>
Ну и запрос составлять
PHP
1
2
3
4
5
6
7
8
9
if (isset($_GET['del']) && is_array($_GET['del']))
{
    $del = array();
    foreach ($_GET['del'] as $el)
        $del[] = (int)$el;
    
    $sql = 'DELETE FROM `table` WHERE `id` in (' . implode(',', $del) . ')';
    ...
}
0
2 / 2 / 0
Регистрация: 20.12.2012
Сообщений: 52
22.04.2013, 18:41  [ТС]
Но если цикл выполнится несколько раз то и обращения к БД будет несколько раз. Здесь нет ничего плохого? Или я не правильно понял? Извините за такие вопросы но я в этом новичок.
0
1178 / 1128 / 94
Регистрация: 31.05.2012
Сообщений: 3,060
22.04.2013, 18:42
где вы видите обращение к бд в цикле?
1
2 / 2 / 0
Регистрация: 20.12.2012
Сообщений: 52
22.04.2013, 20:56  [ТС]
Извиняюсь недоглядел. Спасибо. Сейчас буду пробовать.

Добавлено через 2 часа 7 минут
Всеравно не получается удалить. Вот код:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
<? db_connect() or die(mysql_error());
 
if (isset($_POST['del']))
{
    $del = array();
    foreach ($_POST['del'] as $del)
        $del[] = (int)$del;
    
    $result = mysql_query("DELETE FROM `articles` WHERE `id` in (' . implode(',', $del) . ')") or die(mysql_error());
 
}
//header('Location: http://smartphone/admin/page/list.php'); 
?>
0
 Аватар для fanatikus
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
22.04.2013, 22:00
а так
PHP
1
$result = mysql_query("DELETE FROM `articles` WHERE `id` in (" . implode(',', $del) . ")") or die(mysql_error());
1
2 / 2 / 0
Регистрация: 20.12.2012
Сообщений: 52
22.04.2013, 22:18  [ТС]
Нет, туда походу код даже не доходит выдает ошибку
Fatal error: [] operator not supported for strings in *************
0
1178 / 1128 / 94
Регистрация: 31.05.2012
Сообщений: 3,060
22.04.2013, 22:28
PHP
1
2
3
4
5
6
7
8
9
10
11
12
<?php db_connect() or die(mysql_error());
 
if (isset($_POST['del']))
{
    $del = array();
    foreach ($_POST['del'] as $el)
        $del[] = (int)$el;
    
    $result = mysql_query('DELETE FROM `articles` WHERE `id` in (' . implode(',', $del) . ')') or die(mysql_error());
 
}
//header('Location: http://smartphone/admin/page/list.php');
У вас то открывается кавычка, закрывается апостроф, то на оборот)
+ вы переменную $del перетираете в цикле
1
2 / 2 / 0
Регистрация: 20.12.2012
Сообщений: 52
22.04.2013, 22:41  [ТС]
Ух ты работает, я безумно счастлив.
Теперь проанализирую ошибки и продолжу работу.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
22.04.2013, 22:41
Помогаю со студенческими работами здесь

Неработает циклом удаления символа
Нужно чтобы из строчки удалялся символ &quot;а&quot;, но почему то у меня этот цикл игнорируется. Подскажите что не так. Код программы: ...

ProgressBar для отображения процесса удаления файлов (с учетом размера файлов)
Есть папки, которые периодически заполняются ненужными файлами. Нужно создать прогрессБар на каждую папку, когда удаляются файлы из них....

Скрипт на проверку наличия файлов в каталоге и удаления файлов
Доброго времени суток! Накидал не большой скрипт для очистки папки. По задумке он должен проверить есть ли файлы в папке, если есть то...

Перебор циклом файлов в каталоге
Доброго времени суток. Как пройтись циклом по файлам в папке?

Формирование pdf файлов циклом из таблицы
Доброго времени суток. на данный момент макрос формирует из заданной строки файл pdf,сохраняет его в определенной папке и записывает в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru