За последние 24 часа нас посетили 60277 программистов и 1812 роботов. Сейчас ищут 824 программиста ...

Как сделать правильно?

Тема в разделе "PHP и базы данных", создана пользователем Vitte, 3 фев 2017.

  1. Vitte

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

    С нами с:
    30 янв 2017
    Сообщения:
    113
    Симпатии:
    5
    Как реализовать удаление записи в БД?
    Вот коды:
    Код вывода:

    PHP:
    1. <?php
    2. require 'bd.php';
    3. require '../bd.php';
    4.   if ( isset($_SESSION['logged_user']) ) :
    5. $tourn = mysqli_query($connection, "SELECT * FROM `tourn` ORDER BY `id` DESC");
    6.  
    7. ?>
    8. <?php
    9.  
    10.   while ( $art = mysqli_fetch_assoc($tourn)) {
    11.       ?>
    12. <table border="1">
    13.    <tr>
    14.    <th>id</th>
    15.     <th>Название</th>
    16.     <th>Пароль</th>
    17.     <th>Удаление</th>
    18.    </tr>
    19.    <tr>
    20.     <td><?php echo $art['id'];?></td>
    21.     <td><?php echo $art['title'];?></td>
    22.     <th><?php echo $art['password'];?></th>
    23.     <td>
    24.     <a href="http://clash.com/tournirs/admin/delete_2.php" name='del'> Удалить </a>
    25.  
    26.     </td>
    27.   </tr>
    28. </table>
    29. <?php
    30.   }
    31. ?>
    Код обработчика
    PHP:
    1. <?php
    2.  
    3.  
    4. require 'bd.php';
    5. require '../bd.php';
    6.  
    7. ?>
    8.  
    9. <?php
    10.  
    11.    $id = $_GET['id'];
    12.  
    13.    if(isset($_POST['del']))
    14. {
    15.  
    16. mysql_query($connection,"DELETE FROM tourn WHERE id='$id'");
    17.  
    18. echo "Турнир удален!";
    19. }else {
    20.  
    21.     echo "Не удален!";
    22. }
    23.  
    24. ?>
    ПОЧЕМУ НЕ УДАЛЯЕТСЯ, ЧТО НЕ ТАК?)
     
  2. san4ez

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

    С нами с:
    13 авг 2016
    Сообщения:
    331
    Симпатии:
    47
    у тебя же не передается ничего в $_GET['id']
    --- Добавлено ---
     
  3. Vitte

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

    С нами с:
    30 янв 2017
    Сообщения:
    113
    Симпатии:
    5
    Т.е. нужно прописать так:
    $id=$_GET['del']
    или как
     
  4. san4ez

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

    С нами с:
    13 авг 2016
    Сообщения:
    331
    Симпатии:
    47
    да и условие тут неправильное.. переменной $_POST
    у тебя это прописано уже, но она ($_GET['id']) пустая.
    https://php.ru/manual/reserved.variables.get.html
     
  5. Vitte

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

    С нами с:
    30 янв 2017
    Сообщения:
    113
    Симпатии:
    5
    Все равно не понял, допиши пж, а то времени не много прост.. все перепробовал уже не получается
     
  6. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    До такой степени, что даже слова не успеваешь дописать.:D:eek:
     
  7. san4ez

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

    С нами с:
    13 авг 2016
    Сообщения:
    331
    Симпатии:
    47
    дописывать небуду, что именно не понял? как пробовал? показывай
     
  8. Vitte

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

    С нами с:
    30 янв 2017
    Сообщения:
    113
    Симпатии:
    5
    Так, что там не правильно то в коде?
    Я передаю по GET, но строка все равно не удаляется, может что-то не дописал тип
    Вот скрины:
     

    Вложения:

    • к1.png
      к1.png
      Размер файла:
      7,5 КБ
      Просмотров:
      2
    • к2.png
      к2.png
      Размер файла:
      5,2 КБ
      Просмотров:
      2
  9. san4ez

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

    С нами с:
    13 авг 2016
    Сообщения:
    331
    Симпатии:
    47
    @Vitte в том то и дело, что ты ничего не передал по GET. Ты читал мануал, который я скинул? Посмотри там пример как передавать данные по GET
    --- Добавлено ---
    вот в этой ссылке надо кое что дописать
    HTML:
    1. <a href="http://clash.com/tournirs/admin/delete_2.php" name='del'> Удалить </a>
     
  10. Vitte

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

    С нами с:
    30 янв 2017
    Сообщения:
    113
    Симпатии:
    5
    Крч, я хз:oops::oops:
     
  11. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    Как выглядит в адресной строке параметр передаваемый через GET?
     
  12. san4ez

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

    С нами с:
    13 авг 2016
    Сообщения:
    331
    Симпатии:
    47
    ты смотрел пример в мануале?
     
  13. Vitte

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

    С нами с:
    30 янв 2017
    Сообщения:
    113
    Симпатии:
    5
    Там все обыкновенно:
    Нажимаешь кнопку "удалить" в адресной строке вот такое : delete_2.php
    HTML:
    1. <a href="http://clash.com/tournirs/admin/delete_2.php" name='del'> Удалить </a>
     
  14. Vitte

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

    С нами с:
    30 янв 2017
    Сообщения:
    113
    Симпатии:
    5
    Да, но особо не понял ничего
     
  15. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    https://ru.wikipedia.org/wiki/HTTP#GET
    Для особо ленивых:
     
  16. san4ez

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

    С нами с:
    13 авг 2016
    Сообщения:
    331
    Симпатии:
    47
    ну я незнаю как еще тебе обьяснить... там все предельно ясно написано.
     
  17. Vitte

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

    С нами с:
    30 янв 2017
    Сообщения:
    113
    Симпатии:
    5
    2 дня обучение PHP :):):)
     
  18. san4ez

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

    С нами с:
    13 авг 2016
    Сообщения:
    331
    Симпатии:
    47
    вот смотри ссылка https://php.ru не передает ничего по GET, а ссылка https://php.ru?id=1 передаст $_GET['id'] = 1
     
  19. Vitte

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

    С нами с:
    30 янв 2017
    Сообщения:
    113
    Симпатии:
    5
    Так это понятно, я не могу разобрать как получить такую ссылку
     
  20. san4ez

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

    С нами с:
    13 авг 2016
    Сообщения:
    331
    Симпатии:
    47
    ну ты же показываешь id, значит умеешь его выводить
    PHP:
    1. <?php echo $art['id'];?>
     
  21. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    Сконкатенировать её самому
     
  22. Vitte

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

    С нами с:
    30 янв 2017
    Сообщения:
    113
    Симпатии:
    5
    Так, у меня теперь все сформировано, но обработчик почему-то не обрабатывает:
    Вот такая ссылка
    PHP:
    1. <a  name='del' href="<?php echo $art['id'];?>"> Удалить </a>
    \
    Вон ссылка внизу скрина
     

    Вложения:

  23. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    Какая ссылка-то в итоге получается?
     
  24. san4ez

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

    С нами с:
    13 авг 2016
    Сообщения:
    331
    Симпатии:
    47
    блин... модераторы перенесите уже в "сделайте за меня" и напишите... ну не может понять человек элементарного......
    --- Добавлено ---
    ты вместо ссылки сейчас написал один id... зачем удалил ссылку?