За последние 24 часа нас посетили 17814 программистов и 1678 роботов. Сейчас ищут 842 программиста ...

Проблема с выгрузкой данных в метод POST

Тема в разделе "PHP для новичков", создана пользователем Alexander Aslanyan, 9 авг 2011.

  1. Alexander Aslanyan

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

    С нами с:
    9 авг 2011
    Сообщения:
    8
    Симпатии:
    0
    Адрес:
    Россия
    День добрый!
    Решил создать свой административный интерфейс и пришел к такой проблеме.
    Есть данные из таблицы в БД, они выдаются в таблицу на странице таким кодом:

    PHP:
    1. echo "<table class='update_spisok' border='1'>
    2.                         <tr>
    3.                             <td>id</td>
    4.                             <td>Номер</td>
    5.                             <td>Название</td>
    6.                             <td>Автор</td>
    7.                             <td>Категории</td>
    8.                             <td>Дата добавления</td>
    9.                             <td>Редактировать</td>
    10.                         </tr>";
    11.                         mysql_select_db ('corason');
    12.                         $result_id="SELECT `id` FROM `t_txt`";
    13.                         $row_id=mysql_query ($result_id);
    14.                         $line_id = mysql_fetch_array ($row_id, MYSQL_ASSOC);
    15.                        
    16.                         $result = "SELECT * FROM `t_txt` ORDER BY `id` ASC ";
    17.                         $myrow = mysql_query ($result);
    18.                         $line = mysql_fetch_array ($myrow, MYSQL_ASSOC);
    19.                         $num=0;
    20.                        do{
    21.                            $num=$num+1;
    22.                             echo "<tr>
    23.                                     <form action='includes/delete_txt.php' method='POST'>
    24.                                     <td><input type='hidden' name=".$line['id']." value=".$line['id']."></td>
    25.                                     <td>".$num."</td>
    26.                                     <td>".$line['db_name_txt']."</td>
    27.                                     <td>".$line['db_author']."</td>
    28.                                     <td>".$line['db_category']."</td>
    29.                                     <td>".$line['db_date_add']."</td>
    30.                                     <td><input type='submit' name='delete_txt' value='Удалить'></form></td>
    31.                                 </tr>";
    32.                        
    33.                        }
    34.                        while ($line = mysql_fetch_array ($myrow));
    35.  
    36.             echo"</table>";
    37.  
    Мне надо удалить данные из БД, где есть такой id. Однако, прежде чем удалять я проверяю (для себя визуально), а есть ли что-то в POST?

    PHP:
    1.  
    2. <?
    3. echo $_POST['id'];
    4.  
    5. require_once '../connect.php';
    6. mysql_select_db ('corason');
    7. $result=$_POST['id'];
    8.  
    9. mysql_query ("DELETE * FROM `corason`.`t_txt` WHERE `t_txt`.`id`=$result ");
    10. header('location: [url=http://localhost/testphp/cms/admin/update.php']http://localhost/testphp/cms/admin/update.php'[/url]); /* Редирект на страницу admin.php */
    11. exit();
    12.  
    13.  
    14. ?>
    15.  
    Система ругается на необъявленный идентификатор id. Я верно понимаю, что ничего в массив POST не выгружается?
    Правильно ли у меня оформлена форма? В решении у меня, где я делаю вставку, там есть поля текстовые и т.п. и все работает А как сделать то же самое с выданными из БД данными и отправить их дальше на обработку(удаление записи из БД)?

    Заранее спасибо![/php]
     
  2. sobachnik

    sobachnik Старожил

    С нами с:
    20 апр 2007
    Сообщения:
    3.380
    Симпатии:
    13
    Адрес:
    Дмитров, МО
    ===>

    Код (Text):
    1. <input type='hidden' name='id' value=".$line['id'].">
     
  3. Alexander Aslanyan

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

    С нами с:
    9 авг 2011
    Сообщения:
    8
    Симпатии:
    0
    Адрес:
    Россия
  4. Alexander Aslanyan

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

    С нами с:
    9 авг 2011
    Сообщения:
    8
    Симпатии:
    0
    Адрес:
    Россия
    сам отловил еще одну ошибку:

    PHP:
    1.  mysql_query ("DELETE * FROM `corason`.`t_txt` WHERE `t_txt`.`id`=$result ");
    надо
    PHP:
    1.  mysql_query ("DELETE FROM `corason`.`t_txt` WHERE `t_txt`.`id`=".$result." ");