Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Удаление записей из Бд
 
 автор: WinT   (20.09.2006 в 18:14)   письмо автору
 
 

Решил сделать удаление тем на форуме, нашел на вашем форуме вот что:


<?
$del 
$_POST['del'];
if(!empty(
$del)) { $query1  =  "("; foreach($del as $val$query1 .= "$val,";
$query1 substr($query10strlen($query1) - 1).")";
$query1 =  "DELETE FROM themes WHERE id IN ".$query1;
if(!
mysql_query($query1) and !mysql_query($query02)) { echo(mysql_error()); } else { header("Location: themes.php?forum=".$_GET['forum'].""); } }
?>

все бы ничего, но можно как-нибудь удалять еще и сообщения, принадлежащие удаляемым темам?
На всякий случай прикрепляю структуру таблицы с сообщениями.

   
 
 автор: kasmanaft   (20.09.2006 в 18:45)   письмо автору
 
   для: WinT   (20.09.2006 в 18:14)
 

можно так попробовать .. в $del же id етм передается?

DELETE FROM posts WHERE id_theme IN ".$query1;

   
 
 автор: WinT   (20.09.2006 в 19:28)   письмо автору
 
   для: kasmanaft   (20.09.2006 в 18:45)
 

Не, так уже пробовал не работает.

   
 
 автор: cheops   (20.09.2006 в 20:30)   письмо автору
 
   для: WinT   (20.09.2006 в 18:14)
 

Лучше используйте функцию implode()
<? 
  $del 
$_POST['del']; 
  
$query1 =  "DELETE FROM themes WHERE id IN (".implode(",",$del).")"
  if(!
mysql_query($query1) and !mysql_query($query02)) { echo(mysql_error()); } else { header("Location: themes.php?forum=".$_GET['forum'].""); } } 
?>

   
 
 автор: WinT   (21.09.2006 в 15:19)   письмо автору
 
   для: cheops   (20.09.2006 в 20:30)
 

Ну не хочет он сообщения удалять.
Может это работает только для полей, кот. задан первичный ключ?

   
 
 автор: Vlas_r   (21.09.2006 в 16:39)   письмо автору
 
   для: WinT   (21.09.2006 в 15:19)
 

1. Попробуйте использовать оператор JOIN http://www.mysql.ru/docs/man/JOIN.html
2. Никогда не доверяйте переменным $_POST и $_GET, всегда выполняйте проверку на правильность содержащайся в них информации.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования