За последние 24 часа нас посетил 17601 программист и 1314 роботов. Сейчас ищут 1720 программистов ...

Удаление сообщения со страницы

Тема в разделе "Работа с почтой", создана пользователем Торгын, 12 окт 2009.

  1. Торгын

    Торгын Активный пользователь

    С нами с:
    12 окт 2009
    Сообщения:
    5
    Симпатии:
    0
    Здравствуйте! У меня такая проблема, создала страницу отправки сообщения, ну как на майле, но никак не могу написать код удаления выделенного сообщения со страницы. Пробовала через $result = mysql_query ("DELETE FROM messages WHERE id='$id'"); не получилось. Буду рада любым советам по решению этой проблеме.
     
  2. Simpliest

    Simpliest Активный пользователь

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    И что именно не получилось?

    Не сработало? Выдало какие-то ошибки?
     
  3. Торгын

    Торгын Активный пользователь

    С нами с:
    12 окт 2009
    Сообщения:
    5
    Симпатии:
    0
    Вроде радио кнопки выводятся и пишет что удалено, но результата нет, письмо как стояло, так и стоит на странице. Я пыталась закинуть файлы delete.php и drop.php в одну index.php, ну чтобы все и сразу на одной странице. Вроде вышло, но НЕ УДАЛЯЕТ. Вот, посмотрите..
    PHP:
    1.  <?php
    2. if (isset($id))
    3. {
    4. $result = mysql_query ("DELETE FROM messages WHERE id='$id'");
    5.  
    6. if ($result == 'true') {echo "<p>Ваша информация  успешно удалена!</p>";}
    7. else {echo "<p>Ваша информация не удалена!</p>";}
    8.  
    9.  
    10. }        
    11. else
    12.  
    13. {
    14. echo "<p>Вы запустили данный файл без параметра id, поэтому удаление невозможно.</p>";
    15. }
    16. ?>
    PHP:
    1. <form action="drop_message.php" method="post">  
    2.          <p>
    3.           <?php
    4.         $result  = mysql_query ("SELECT * FROM messages");
    5.         $myrow =  mysql_fetch_array ($result);
    6. do
    7. {
    8. printf ("<p><input name ='%s' type ='radio' value ='%s' > <label>%s</label><label>%s</label></p>", $myrow['id'],$myrow['name'], $myrow['text']);
    9.  
    10. }
    11.  
    12. while
    13. (       $myrow =  mysql_fetch_array ($result));
    14.  
    15.        ?>
    16.          
    17.          </p>
    18.         <p><input name="submit" type="submit" value="Удаление" />
    19.        </p>
    20.        </form>
     
  4. Simpliest

    Simpliest Активный пользователь

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    Так. Первое что учимся делать - это отлаживать скрипты.

    Для этого сам процесс удаления надо представить в виде этапов.
    1. получаем в скрипте данные формы
    2. подставляем их в запрос
    3. выполняем запрос.

    Вот и начинай с 1го. Ты точно получила данные с формы?
    Попробуй их просто вывести на экран.

    Код (Text):
    1. var_dump($_POST);
    2. var_dump($id)
     
  5. Торгын

    Торгын Активный пользователь

    С нами с:
    12 окт 2009
    Сообщения:
    5
    Симпатии:
    0
    похоже код который Вы написали, что-то вроде описания и он должен стоят в самом начале, так? Если честно, я даже понятия не имею зачем он нужен, я им никогда не пользовалась.
     
  6. Simpliest

    Simpliest Активный пользователь

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    Это не описание, но на время тебе необходимо поставить его в начало файла.
    Он нужен для того чтобы увидеть что пришло тебе в скрипт.
    И научится им пользоваться - придется.

    Поэтому вставляй код. Выполняй скрипт. Смотри на результат.

    P.S. Возможно у тебя стоит register_globals = off в настройках поэтому переменные сами по себе не объявляются. Их необходимо инициализировать.
     
  7. Торгын

    Торгын Активный пользователь

    С нами с:
    12 окт 2009
    Сообщения:
    5
    Симпатии:
    0
    Знаете, попробую объяснить проще свою цель, мне нужно те файлы drop.php и delete.php засунуть в index.php, так чтобы процесс удаления заработал. Вот код index.php
    PHP:
    1.   <?php
    2. include ("blocks/bd.php");
    3. if (isset ($_POST ['name'])) {$author  = $_POST['name'];  if ($name== '')  {unset ($name);}}
    4. if (isset ($_POST ['text'])) {$text  = $_POST['text']; if ($text== '')  {unset ($text);}}
    5.  
    6. ?>
    7. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    8. <html xmlns="http://www.w3.org/1999/xhtml">
    9. <head>
    10. <meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
    11. <title>Страницa добавления сообщений</title>
    12. <link href="style.css" rel="stylesheet" type="text/css" >
    13. </head>
    14. <body>
    15. <!--Заполнение таблицы-->
    16. <table width= 500 cellspacing=1 border=0 align="center" bgcolor="#CCCCCC">
    17.   <tr>
    18.         <td width="475" valign="top">
    19.   <form id="form1" name="form1" method="post" action="index.php">
    20.          <p>
    21.           <tr valign=middle bgcolor=#FFFFFF><td  align="center" class="name"><b>Имя пользователя:</b></td><td class=text><input type="text"  class="text" size=60 name="name" id="name" value=""></td></tr>
    22.          </p>
    23.          <p>
    24.          <tr><td bgcolor=#FFFFFF valign=top class="name"><b>Текст сообщения:</b>
    25. </td><td bgcolor=#FFFFFF valign=middle><textarea cols=60 rows=10 wrap="soft" name="text" id="text" class="text" tabindex="3" onClick="storeCaret(this);" onKeyup="storeCaret(this);" onChange="storeCaret(this);" onFocus="storeCaret(this);"></textarea></td></tr>
    26.          </p>
    27.          <p>
    28. <tr>
    29. <td bgcolor="#CCCCCC"  align=center>
    30. <form name="SR_form" method="post" target="_blank"  onsubmit="return SR_submit(this)">
    31. <input class=button type="submit" value="Отправить" name="submit"  id="submit" onClick="return   Formchecker(this.form)">
    32. </td>
    33.  </form>
    34.  <tr>
    35.   <!--Список сообщений-->
    36.         <tr>
    37. <form action="index.php" method="post">
    38. <p>
    39.       <?php
    40. if ( isset($name)&&isset($text) )
    41. {
    42. /* Здесь пишем что можно заносить информацию в базу */
    43. $result = mysql_query ("INSERT INTO messages (name,text) VALUES ('$name','$text')");    }
    44. ?>
    45.  <?
    46.         $result =  mysql_query ("SELECT * FROM messages", $db);
    47.         $myrow = mysql_fetch_array ($result);
    48.        
    49.         do {
    50.        
    51.         printf ("<table  class='table'>
    52. <a href='view_message.php?id=%s'>%s</a><p>%s</p> </table><br> </br>", $myrow["id"], $myrow["name"], $myrow["text"]);
    53.      }
    54.      while ($myrow = mysql_fetch_array ($result));
    55. ?>   </form>
    56. </td>
    57.       </tr>
    58.     </table>    
    59. </body>
    60. </html>
    61.  
    62.  
     
  8. Simpliest

    Simpliest Активный пользователь

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    Замечательно.
    Раз нужно засунуть - засовывайте.
    В чем сложность?

    Готовое решение? Это не ко мне. Обращайтесь к другим участникам форума.
     
  9. Торгын

    Торгын Активный пользователь

    С нами с:
    12 окт 2009
    Сообщения:
    5
    Симпатии:
    0
    М-да.. Если бы все было так легко.. Но все равно, большое спасибо за помощь! Попробую обмозговать решение этой проблемы с другими участниками форума.