Форумы портала PHP.SU » » Работа с СУБД » Не удаляются строки из БД

Страниц (1): [1]
 

1. Drugpunker - 12 Июля, 2011 - 17:31:13 - перейти к сообщению
Вообщем здрасте!
Молю о помощи!!!!!!
С дуру начал обучаться ПХП по урокам ПОПОВА.
Не могу понять в чём причина - НЕ УДАЛЯЮТСЯ СТРОКИ ИЗ БД.
Уже неделю бьюсь....
Вот 2 файла :

Первый..

del_lesson.php -

CODE (htmlphp):
скопировать код в буфер обмена
  1. <?php include './BLOCKS/db.php';?>
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  6. <title>Страница удаления урока</title>
  7. <link href="styles.css" rel="stylesheet" type="text/css" />
  8. </head>
  9. <body>
  10. <table width="690px." align="center" class="table_border">
  11. <?php include './BLOCKS/header.php';?>
  12.   <tr>
  13.     <td>
  14.     <table width="690.">  
  15.       <tr>
  16.       <td width="220" valign="top" class="left" >
  17.       <?php include './BLOCKS/left.php';?>
  18.       </td>
  19.       <!-- Контент -->
  20.        <td width="457" align="center" valign="top" class="body">
  21.        <p class="lesson_name">Выберите урок для удаления</p>
  22.  <form id="form1" name="form1" method="post"  action="drop_lesson.php">
  23.  <?php
  24. $result=mysql_query ("SELECT title,id FROM lessons",$db);
  25. $myrow=mysql_fetch_array ($result);
  26. /*Ссылка ведёт на этот же файл, чтобы присвоить ей id*/
  27. do
  28. {
  29. printf ("<p><input name 'id_select' type='radio' value='%s'><label>%s</label></p>",$myrow["id"],$myrow["title"]);
  30. }
  31. while ($myrow=mysql_fetch_array ($result));
  32. ?>
  33. <p><input type="submit"  value="Удалить урок" /></p>  
  34.  </form>
  35.       </td>
  36.       </tr>
  37.     </table></td>
  38.   </tr>
  39.   <?php include './BLOCKS/footer.php';?>
  40.   </table>
  41.  
  42. </body>
  43. </html>
  44.  



и Второй ...

drop_lesson.php

CODE (htmlphp):
скопировать код в буфер обмена
  1. <?php
  2.  
  3. include './BLOCKS/db.php';
  4. /*Добавляем дополнительную строку для проверки существования id, а затем внесения
  5.                               его в переменную*/
  6. if (isset ($_POST['id_delete'])) {$id = $_POST['id_delete'];}
  7.  
  8. if ($id == ''){echo "Значения id не существует";
  9. exit();}
  10.  
  11. ?>[/color]
  12. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  13. <html xmlns="http://www.w3.org/1999/xhtml">
  14. <head>
  15. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  16. <title>Обработчик</title>
  17. <link href="styles.css" rel="stylesheet" type="text/css" />
  18. </head>
  19. <body>
  20. <table width="690px." align="center" class="table_border">
  21. <?php include './BLOCKS/header.php';?>
  22.   <tr>
  23.     <td>
  24.     <table width="690.">  
  25.       <tr>
  26.       <td width="220" valign="top" class="left" >
  27.       <?php include './BLOCKS/left.php';?>
  28.       </td>
  29.       <!-- Контент -->
  30.        <td width="457" align="center" valign="top" class="body">
  31.      <?php
  32.            /*Если существуют указанные переменные, то программа удаляет их                          значения из таблицы*/
  33.            if (isset ($id))
  34.                   /*Указываем какие поля нужно удалить*/
  35.                   {$result = mysql_query ("DELETE FROM lessons WHERE  id=".$id)
  36.                   or die (mysql_error());
  37.                  
  38.                  if ($result == 'true') {echo "<p>Урок успешно удалён</p>";}
  39.                
  40.                   }
  41.          else {echo "<p>Скорее всего вы не выбрали радио-кнопку на предыдущем шаге, поэтому - <br>УРОК НЕ МОЖЕТ БЫТЬ УДАЛЁН!!!</p>";}
  42.            
  43.            
  44.            ?>
  45.        </td>
  46.       </tr>
  47.     </table></td>
  48.   </tr>
  49.  <?php include './BLOCKS/footer.php';?>
  50.   </table>
  51.  
  52. </body>
  53. </html>
2. Саныч - 12 Июля, 2011 - 17:53:55 - перейти к сообщению
1. error_reporting(E_ALL); в начало файла, возможно где-то ошибка...
2. if ($result == 'true') "немного" нетак... Правильно
PHP:
скопировать код в буфер обмена
  1. if ($result == true)
  2. либо еще короче
  3. if ($result)
3. OrmaJever - 12 Июля, 2011 - 19:43:40 - перейти к сообщению
Drugpunker пишет:
PHP:
скопировать код в буфер обмена
  1. printf ("<p><input name 'id_select' type='radio' value='%s'><label>%s</label></p>",$myrow["id"],$myrow["title"]);

между name и 'id_select' нехвататет = Подмигивание
4. Drugpunker - 12 Июля, 2011 - 20:23:17 - перейти к сообщению
Так всё таки в чём же тут проблема?
Может кто подскажет какой-нибудь мега-быстрый способ узнать?
Или хотя бы что-нибудь мелкое по объёму,доступно и быстро обучающее Слёзы в глазах

 

Powered by ExBB FM 1.0 RC1