Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Архив форумов ЦИТФорума
Море(!) вопросов - Море(!) ответов
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
Как правильно задавать вопросы

удаление строк из таблицы(php mySql)

 
Перейти:  
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Базы данных
Предыдущая тема :: Следующая тема  
Автор Сообщение
Raspytnik



Зарегистрирован: 27.09.2006
Сообщения: 4
Откуда: одесса

СообщениеДобавлено: Вс Окт 08 2006 20:06    Заголовок сообщения: удаление строк из таблицы(php mySql) Ответить с цитатой

у меня есть бд в мускуле, я пишу к ней программулину типа phpmyadmin но для наших работников. сделал форму на добавление, которая выводит данные одной таблицы, и в конце каждой строки добавил checkbox. а теперь хочу добавить кнопку удалить, чтобы при выборе нескольких полей пользователь нажал кнопку и эти поля улетели. checkboxы у меня имеют имена id строк. как составить запрос, чтобы он брал отмеченные строки и удалял их из таблицы?
_________________
Жизнь это счастье
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Alex_pm



Зарегистрирован: 26.08.2006
Сообщения: 55

СообщениеДобавлено: Пт Окт 13 2006 22:20    Заголовок сообщения: Ответить с цитатой

DELETE ..... WHERE kod = k1 OR kod = k2 OR.....

По пробуй еще
WHERE kod IN (k1, k2, k3, ....)
но по моему MySQL такое не понимает
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Dmitry K



Зарегистрирован: 19.09.2004
Сообщения: 31

СообщениеДобавлено: Пт Ноя 03 2006 08:14    Заголовок сообщения: Re: удаление строк из таблицы(php mySql) Ответить с цитатой

Дарове!
рад буду помочь тем что знаю, сам пишу подобие myadmin, вот скоро уже 3-й месяц пойдет. Но это болтовня давай к делу.

что касательно удаление одной строки, то оно у нас в MySql делается следующим образом
//формирую запрос на удаление клиента
$Query="DELETE FROM equipment WHERE id=".$id;
//Производим удаление из таблицы:
$Answer=mysql_query($Query);

Воот как видишь equipment -это название той таблички из котороый ты херить строчки будешь, ну а id это название поля таблички из которое ты херить будешь.

Значит далее по тексту если ты напишеш $Query="DELETE FROM equipment"; и подаш такой запрос, то табличка останется, а все ее содержимое похереься.

Еще что хочу сказать: Вот например если поле по которому ты ищеш строку для удаления является не цифровыйм полем, а строкой то надо писать так:
$Query="DELETE FROM equipment WHERE name LIKE \"TheName\"";

Вот. А если несколько строчек хочешь удалть напиши как говорит Alex_pm $Query="DELETE FROM equipment WHERE id=1 OR id=2";

Вот тогда фнукция mysql_query вернет тебе true если ты удалил все элмементы, а вслучае не удаления хоть одного тебе false напишут.

Я бы лучше сделал удаление через цикл, где коды всех удалений будут лежать в массиве

$ForDelete=array(1,2,4,5);
foreach($ForDelete as $v){
$Query="DELETE FROM equipment WHERE id=".$v;
$Answer=mysql_query($Query);
if(Answer) echo "$v - успешно удален<br>";
else echo "$v - удалеть не удалоьс<br>";
}


А передавать большое количестов занчений можно, следующим образом: создать скрытое поле, куда через знак "|" записывать id которые надо удалить, а потом при помощи функции:
***********************************************************
explode ( )

Функция explode( ) делит строку на элементы и возвращает эти элементы в виде массива. Синтаксис функции explode( ):

array explode (string разделитель, string строка [, int порог])

Разбиение происходит по каждому экземпляру разделителя, причем количество полученных фрагментов может ограничиваться необязательным параметром порог. Разделение строки функцией explode( ) продемонстрировано в следующем примере:

$info = "wilson | baseball | indians";

$user = explode("|", $info);

// $user[0] = "wilson";

// $user[1] = "baseball";

// $user[2] = "Indians";
***************************************************
Для этого заполнения скрытого поля используй javaScript.

Желаю удачи.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Базы данных Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2002 phpBB Group
Русская поддержка phpBB

 

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 6608306, ICQ 232284597
Пресс-релизы — pr@citforum.ru
Послать комментарий
Информация для авторов
This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2006 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...