За последние 24 часа нас посетили 32843 программиста и 1821 робот. Сейчас ищут 1166 программистов ...

Удаление строки

Тема в разделе "PHP для новичков", создана пользователем greenzlat, 6 фев 2010.

  1. greenzlat

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

    С нами с:
    27 апр 2008
    Сообщения:
    255
    Симпатии:
    0
    Задача такова!
    Есть вывод таблиц в цикле:
    PHP:
    1. <? $result = mysql_query ("SELECT * FROM bd  WHERE kat='$kat' AND kod=0 ORDER BY data DESC LIMIT $start, $num",$db);
    2.  
    3. if (mysql_num_rows($result)>0)
    4. {
    5.  
    6. while ($myrow = mysql_fetch_array ($result))
    7. {
    8.  
    9. ?>
    10.       <table width='100%' border='0' cellpadding='0' cellspacing='0' class='tabl_zag'>
    11.            <tr>
    12.              <td width='10%' height='36' background="../img/zagolovok.jpg" class='zagolovok_img'><img src="../img/icon/plenka.jpg" width='35' height='27'></td>
    13.              <td width='63%' background="../img/zagolovok.jpg" class='zagolovok'><a href='../video.php?kat=<?php echo $myrow['kat']?>&id=<?php echo $myrow['id']?>'>.................................
    Так вот мне нужно допустим в админке удалить из БД строку одной из выведенных таблиц. Я знаю ID этой строки. создать форму удаления??
    HTML:
    1.  
    2. <form name="form1" method="post" action="delete.php">
    3.         <label>
    4.         <input type="submit" name="delete" id="delete" value="Удалить">
    5.         </label>
    6.                         </form>
    7.  
    Но это придется писать отдельный файл обработчик, а можно как-нибудь внутри этой страницы без постороннего скрипта удалить строку??
     
  2. Simpliest

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

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    ну укажи в action имя нужного тебе скрипта и обрабатывай соответственно.

    В чем вопрос?
     
  3. greenzlat

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

    С нами с:
    27 апр 2008
    Сообщения:
    255
    Симпатии:
    0
    PHP:
    1. <form name="form1" action="DELETE FROM `bd` WHERE `id` = <?php echo $myrow['id']?> LIMIT 1">
    2. <label>
    3. <input type="submit" name="delete" id="delete" value="Удалить">
    4. </label>
    5. </form>
    Вставил после таблицы так! Но не удаляет
     
  4. r00les

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

    С нами с:
    4 сен 2009
    Сообщения:
    142
    Симпатии:
    0
    greenzlat

    Страсти то какие :D.

    По делу: удалять можно не только по id строки, по любому уникальному ( желательно ) параметру.

    И ешё:

    PHP:
    1. <form name="form1" action="мой скрипт.php">
    2.   <input type="submit" name="delete" id="delete" value="Удалить">
    3. </label>
    4. </form>
    5.  
    6. <?php
    7.  
    8. # Мой скрипт.php
    9.  
    10. $sql = "DELETE FROM `bd` WHERE `id` = ".$myrow['id']." LIMIT 1";
    11.  
    12. ...
    13. ?>
     
  5. greenzlat

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

    С нами с:
    27 апр 2008
    Сообщения:
    255
    Симпатии:
    0
    Да это-то я знаю что обработчик сделать надо, я просто не хотел создавать лишний файл, думал может как-нибудь можно в action="" прописать.

    Сделал скрипт удаления delete_post.php:

    PHP:
    1.  
    2. <?php  
    3. $id_del = $_GET['id'];
    4. $result2 = "DELETE FROM `bd` WHERE `id` = '$id_del' LIMIT 1";    
    5. ?>                
    6.  
    Не удаляет строку и в адресе ссылки вот такое: delete_post.php?delete=%D3%E4%E0%EB%E8%F2%FC
    Пробовал так: $id_del = $_GET['$myrow['id']']; все равно не удаляет.
     
  6. iliavlad

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

    С нами с:
    24 янв 2009
    Сообщения:
    1.689
    Симпатии:
    4
    можно кстати долго пробовать угадывать. прочитайте книжку или посмотрите какой-нибудь работающий скрипт.