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

Форум MySQL

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Скрипт не удаляет данные из базы данных

Сообщения:  [1-10]   [11-11] 

 
 автор: cheops   (19.04.2010 в 13:10)   письмо автору
 
   для: OLi   (18.04.2010 в 18:34)
 

У вас срабатывает этот оператор?
<?php
  
echo "<p>Удалено!</p>";
?>

  Ответить  
 
 автор: OLi   (18.04.2010 в 18:34)   письмо автору
 
   для: OLi   (18.04.2010 в 16:20)
 

В чем трабл?

  Ответить  
 
 автор: OLi   (18.04.2010 в 16:20)   письмо автору
 
   для: cheops   (18.04.2010 в 15:42)
 

Ничего не выводит, у меня правда через include подключается обработчик

  Ответить  
 
 автор: cheops   (18.04.2010 в 15:42)   письмо автору
 
   для: OLi   (18.04.2010 в 15:35)
 

После запроса - поставьте обработчик ошибки - он что-нибудь выводит?
<?php
  $query 
"DELETE FROM Platia  WHERE id='$id'";
  
$result mysql_query ($query);
  if(!
$result)
  {
     echo 
$query."<br>";
     echo 
mysql_error();
     exit();
  }
?>

  Ответить  
 
 автор: OLi   (18.04.2010 в 15:35)   письмо автору
 
   для: cheops   (18.04.2010 в 14:28)
 

Убрал звездочку - но не помогло!

  Ответить  
 
 автор: cheops   (18.04.2010 в 14:28)   письмо автору
 
   для: OLi   (17.04.2010 в 14:43)
 

Да, действительно, звездочка лишняя. Вообще, чтобы исключить такой класс ошибок нужно ВСЕГДА проверять правильность выполнения SQL-запроса, каким-бы простым он не был. PHP не извещает автоматически об ошибках на стороне MySQL и если их не запрашивать - искать их можно часами. Лучше всегда проверять правильность выполнения запроса - очень много времени экономиться в дальнейшем.

  Ответить  
 
 автор: tvv123456   (17.04.2010 в 17:33)   письмо автору
 
   для: OLi   (17.04.2010 в 14:43)
 

Вам не надоедает ставить все эти экранирующие слеши?

echo"<input type=\"submit\" value=\"Удалить\" name=\"del\" onclick=\"return confirm ('Удалить?')\"> 
<input type=\"button\" value=\"Выделить все\" onClick=\"unCheck(1)\"> 
<input type=\"button\" value=\"Снять выделение\" onClick=\"unCheck(0)\">"; 

Я как минимум 2 варианта знаю как здесь без \ можно обойтись

и еще разве нужна звездочка:

mysql_query ("DELETE FROM Platia  WHERE id='$id'"

Какой смысл она имеет в этом запросе?

  Ответить  
 
 автор: OLi   (17.04.2010 в 14:43)   письмо автору
 
   для: OLi   (17.04.2010 в 14:41)
 

Обработчик написал перед формой

  Ответить  
 
 автор: OLi   (17.04.2010 в 14:41)   письмо автору
 
   для: cheops   (17.04.2010 в 14:34)
 

Скрипт заходит и пишет Удалено!

  Ответить  
 
 автор: cheops   (17.04.2010 в 14:34)   письмо автору
 
   для: OLi   (17.04.2010 в 14:29)
 

А какая реакция скрипта на удаление? Почему обработчик формы находится после формы? Ведь данные сначала отобразятся, а лишь потом удаляться и на странице будут выведены не удаленные данные?

PS У нас нет таблицы и мы ситуацию не можем воспроизвести - нужно более подробно описать, что происходит при попытке удаления. В блок if (isset($_POST['del'])) скрипт заходит?

  Ответить  

Сообщения:  [1-10]   [11-11] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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