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

Удаление с базы данных

06.08.2016, 22:02. Показов 1443. Ответов 14
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Имеется запись в базе данных.
50857016.jpg,99194562.jpg,87141329.jpg,3 7922978.jpg,
При нажатии на ссылку отправляется get запрос с изображением, dell=99194562
Я пробую удалить таким запросом
PHP
1
 mysql_query("DELETE FROM `tovar` WHERE `images`  IN ($impdel) ");
Где impdel это 99194562
Но удаление не происходит. Поскажите, в чем моя ошибка, буду очень признателен.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
06.08.2016, 22:02
Ответы с готовыми решениями:

Удаление из базы данных
Ребят подскажите, не выходит данные удалить что не так делаю. Делаем гет /menu.php?del=$id_photo' И обработка if...

Удаление из базы данных Joomla k2
Помогите с кодом. Хочу сделать код для крона чтобы автоматически удалял статьи снятые с публикации. Я написал код в новом файле...

Удаление строки из базы данных
Доброго времени суток.Прошу сразу не накидываться:Гугл-гуглил,Яндекс-яндексил,Темы формума смотрел,для себя ответа не нашел. Суть...

14
 Аватар для maruo
133 / 133 / 48
Регистрация: 26.04.2013
Сообщений: 1,356
06.08.2016, 22:04
Лучший ответ Сообщение было отмечено Salvat как решение

Решение

Salvat,
SQL
1
DELETE FROM tbl WHERE images LIKE %$impdel%
но имей ввиду что удаляться все записи где найдутся 99194562
1
12 / 11 / 8
Регистрация: 30.11.2015
Сообщений: 422
06.08.2016, 22:23  [ТС]
maruo, удаление не происходит. С помощь print смотрю, в запросе есть после LIKE изображение, но не удаляет почему-то... А на счет всех записей, я пропишу колонки с какими значениями для удаления.
0
 Аватар для maruo
133 / 133 / 48
Регистрация: 26.04.2013
Сообщений: 1,356
06.08.2016, 22:29
Salvat, не могу ничего сказать, где то допускаешь ошибки
Напрямую выполни SQL запрос через MyAdmin или консоль, удалить должен, это у тебя что то в коде не так
1
12 / 11 / 8
Регистрация: 30.11.2015
Сообщений: 422
06.08.2016, 22:33  [ТС]
Попробовал через phpMyAdmin, выдает ошибку
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '%99194562.jpg%' at line 1
0
 Аватар для maruo
133 / 133 / 48
Регистрация: 26.04.2013
Сообщений: 1,356
06.08.2016, 22:35
Salvat, '%impdel%' Это должно быть в кавычках
1
12 / 11 / 8
Регистрация: 30.11.2015
Сообщений: 422
06.08.2016, 22:37  [ТС]
maruo, Хех,
SQL
1
DELETE FROM tbl WHERE images LIKE '%$impdel%'
Кавычки не указал, с ними удалило, но удаление произошло не одной именно этой фразы, а всего что и после нее. Мне необходимо удалить именно эту картинку из поля.
0
 Аватар для maruo
133 / 133 / 48
Регистрация: 26.04.2013
Сообщений: 1,356
06.08.2016, 22:40
Salvat, регулярным выражением.
Либо через php либо через sql , для тебя проще будет через php (вытащить запись, обработать через php , сохранить в БД обратно)
0
12 / 11 / 8
Регистрация: 30.11.2015
Сообщений: 422
06.08.2016, 22:46  [ТС]
SQL
1
UPDATE tovar SET images= REPLACE(`images`,'$impdel','')
Сделал замену

Добавлено через 1 минуту
maruo, благодарю за оказание помощи Я думал на счет регулярок, но охота одним запросом чтобы все было.
0
 Аватар для maruo
133 / 133 / 48
Регистрация: 26.04.2013
Сообщений: 1,356
06.08.2016, 22:47
Salvat, судя по такой строке 50857016.jpg,99194562.jpg,87141329.jpg,3 7922978.jpg, у тебя останутся запятые

Добавлено через 34 секунды
Цитата Сообщение от Salvat Посмотреть сообщение
maruo, благодарю за оказание помощи Я думал на счет регулярок, но охота одним запросом чтобы все было.
так ты сейчас и используешь регулярку
0
12 / 11 / 8
Регистрация: 30.11.2015
Сообщений: 422
06.08.2016, 22:51  [ТС]
Запутался уже. Да, запятые остаются в базе, думаю к переменной первоначально добавлять запятую. Вывод у меня происходит без запятых.
PHP
1
2
                $explode = explode(",", $export);
                $explode_new = array_diff($explode, array(''));
0
 Аватар для maruo
133 / 133 / 48
Регистрация: 26.04.2013
Сообщений: 1,356
06.08.2016, 22:54
Salvat, Ну как я понимаю логику твоего приложения ты выбраешь эту строку и через explode нарезаешь массив через , а если у тебя будет запись img.png,,,img_2,imgblabla.png то у тебя получится больше элементов чем есть.
поэтому да как вариант прибавлять "Запятую" и удалять вместе с ней
А вообще так данные в БД никто не хранит, хочешь хранить через , Проще на стороне сервера преобразовать массив изображений в json строку или сериализовать ее и в таком виде сохранять, А При выборке использовать
PHP
1
json_decode();
или
PHP
1
unserialize();
B Получить уже массив со своими картинками в нужном тебе виде

Так что задумайся. Твой вариант это 1 из первых ошибок и нарушение атомарности БД , Из этого тебе придется городить ненужный код , такой как удалять запятые приклеивать их.
1
12 / 11 / 8
Регистрация: 30.11.2015
Сообщений: 422
06.08.2016, 23:11  [ТС]
maruo, Спасибо за совет, я непременно почитаю за json, только запятая необходима для разделения изображений и выводе их. Эхх, где же Вы раньше были, теперь столько кода придется переписать... На ошибках учатся=)
а если у тебя будет запись img.png,,,img_2,imgblabla.png то у тебя получится больше элементов чем есть.
Больше элементов не может получится, выводятся только изображения, даже не смотря на ,,,, в базе данных. Код.
PHP
1
2
3
4
5
6
7
    $explode = explode(",", $export);
                        $explode_new = array_diff($explode, array(''));
                        $stuff_image = '';
                        foreach ($explode_new as $k => $images){
                        $stuff_image .=  "<img style='width:50px;height:100px;'   src='images/image_stuff/" . $images ."'/>";
                        
                        }
Мне на этом форме именно так подсказали делать, перебирать и хранить. Сейчас да, клею , к переменной.
0
 Аватар для maruo
133 / 133 / 48
Регистрация: 26.04.2013
Сообщений: 1,356
06.08.2016, 23:19
Цитата Сообщение от Salvat Посмотреть сообщение
Мне на этом форме именно так подсказали делать, перебирать и хранить. Сейчас да, клею , к переменной.
ну в данной задаче когда надо удалять редактировать, вариант который вам посоветовали не самый лучший.
Все зависит от ситуации , а реализовывать надо исходя из ситуации
1
0 / 0 / 0
Регистрация: 08.09.2016
Сообщений: 1
08.09.2016, 00:33
Помогите новичку... Wordpress в БД
в названиях рубрик (не во всех) встречаеться аномалия в виде [CATS]
поле name [CATS]Вена (Danubepier Hov), Австрия[CATS]
поле slug catsvena-danubepier-hov-avstriyacats
Задача: как удалить это [CATS] и обрезать в поле slug catsНазваниЕcats
руками на сайте геморно и долго, много такого...
Думал с БД проще... но гугл не помог а сам не силен...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
08.09.2016, 00:33
Помогаю со студенческими работами здесь

Поиск и удаление из базы данных
Вопрос такой как сделать поиск в mysql из &lt;input&gt;, по имени и при нажатии нахождении удалить строчку... вот есть картинка наглядно что было...

Удаление записи из базы данных
Вообщем пишу маленький сайтик, и хочу сделать так, чтобы &quot;через форму логина&quot; проверялось типо права админ и была возможность удалять...

Удаление записи из базы данных
Приветствую. Существует таблица в бд id|name|email|message|data|Сcылка на удаление На экране выводится список из базы данных...

Удаление таблицы/базы данных
Всем привет. Есть код: $db = mysql_connect(&quot;localhost&quot;, &quot;root&quot;, &quot;&quot;); mysql_select_db(&quot;userDatabase&quot;, $db); $cityName = $_GET; ...

Удаление записей из базы данных
У нас есть две таблицы: ids_list и stats. Структура ids_list: id - список идентификаторов. Структура stats: id, value. Как...


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru