[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: массовое удаление строк в таблице Mysql
Страницы: 1, 2
Prettynim
Подскажите, пожалуйста, как организовать удаление сразу нескольких строк в бд. У меня есть список, который формируется запросом из таблицы бд, необходимо напротив каждой записи сделать checkbox, соответсвенно если есть галочки напротив разных записей, их необходимо удалить. Но я не знаю как передать сразу несколько значений для удаления.Помогите, я только начинаю изучать php. хотябы логику объясните. Заранее спасибо.
Ice
нужно поработать с суперглобальным массивом _POST, собрать массив нажатых чекбоксов, а затем удалить из базы значения, воспользовавшись оператором IN

_____________
Пишите код, исходя из того, что все программисты, которые будут сопровождать вашу программу, — склонные к насилию психопаты, знающие, где вы живёте.
Kuliev
Цитата (Prettynim @ 29.01.2010 - 22:50)
Подскажите, пожалуйста, как организовать удаление сразу нескольких строк в бд. У меня есть список, который формируется запросом из таблицы бд, необходимо напротив каждой записи сделать checkbox, соответсвенно если есть галочки напротив разных записей, их необходимо удалить. Но я не знаю как передать сразу несколько значений для удаления.Помогите, я только начинаю изучать php. хотябы логику объясните. Заранее спасибо.



$sql = "DELETE FROM `table` WHERE `id` IN (".implode(',',$id).");


Както так...
Prettynim
Спасибо большое, буду работать.
FatCat
Недавно писал в другом форуме: http://forum.exler.ru/t/155854/p/20557515

_____________
Бесплатному сыру в дырки не заглядывают...
Prettynim
спасибо огромное за помощь. прочитала все и наконец поняла.
GreenJo
а я вот все ровно не понял :(


<form action="drop.php" method="post">
<?php
$result = mysql_query ("SELECT id, name FROM students WHERE hostel='1'");
$myrow = mysql_fetch_array ($result);
do
{
printf ("<p><input name='id' type='checkbox' value='%s'><label>%s</label></p>",$myrow["id"],$myrow["name"]);
}
while ($myrow = mysql_fetch_array ($result));
?>
<input name="submit" type="submit" value="Выселить!!!!">
</
form>


форму нужно тока изменить checkbox а вот в файле drop.php


<?php
if (isset($id) && is_array($id))
{
foreach ($id as $key => $value)
{
$result = mysql_query ("DELETE FROM students WHERE id='$key'");
if ($result == 'true'){
$r = mysql_query ("DELETE FROM rooms WHERE id_room = '$key'");
echo "<p>Студент выселен из общежития и комнаты</p>";}
else {echo "<p>Ошибка при выселении</p>";}
}

else
{
echo "<p>Вы не указали кого надо выселить.</p>";
}
?>


вроде вот так ? но чет не получается
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.