За последние 24 часа нас посетили 17778 программистов и 1622 робота. Сейчас ищут 1837 программистов ...

Удаление записей БД в PHP

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

Метки:
  1. Икита

    Икита Новичок

    С нами с:
    18 дек 2017
    Сообщения:
    2
    Симпатии:
    0
    Здравствуйте. Помогите пожалуйста с кодом. При нажатии кнопки "удалить запись" - он выдает что данная запись удалена, а на деле нет. В чем причина, я не могу понять

    PHP:
    1. html>
    2. <head>
    3. <title>Изменение</title>
    4. <meta charset = "utf-8">
    5. </head>
    6. <body>
    7. <div align="center"><strong>База данных &quot; hroniki&quot;</strong>
    8. <?
    9. if(!($dbLink = mysql_pconnect("localhost","root","")))
    10. {
    11. print("Не могу соединиться с сервером! <br\n>");
    12. print(mysql_errno().":".mysql_error()."<br>\n");
    13. }
    14. if(!mysql_select_db("hroniki",$dbLink))
    15. {
    16. print("Не могу соединиться с базой данных!<br\n>");
    17. print(mysql_errno().":".mysql_error()."<br>\n");
    18. }
    19. $delid = $_POST['id'];
    20. $query = "DELETE FROM climbing WHERE id = '$delid'";
    21. if(!($dbResult = mysql_query($query,$dbLink)))
    22. {
    23. print("Не могу удалить запись!<br\n>");
    24. print(mysql_errno().":".mysql_error()."<br>\n");
    25. }
    26. echo 'Запись удалена: ' . $delid;
    27. ?>
    28. <a href=index.php>Назад</a>
    29. </div>
    30. </body>
    31. </html
    Ссылка на главной странице:
    PHP:
    1. printf("<td><a href=\"delete.php?delid=$id\">удалить</a></td>", $i);
     
    #1 Икита, 18 дек 2017
    Последнее редактирование модератором: 30 дек 2017
  2. Sail

    Sail Старожил

    С нами с:
    1 ноя 2016
    Сообщения:
    1.593
    Симпатии:
    362
    @Икита, данные передаете методом GET, а ищете в $_POST;
    Ищете переданные данные под именем 'id', а передаёте под именем 'delid';
    Прочитайте заодно, что возвращает функция mysql_query() в случае запроса на удаление данных (а не на выборку);
    И лучше все-таки использовать не mysql-библиотеку mysqli или PDO...
    И переделать на отправку данных методом POST.
    Ну, как минимиу...
     
  3. Икита

    Икита Новичок

    С нами с:
    18 дек 2017
    Сообщения:
    2
    Симпатии:
    0
  4. Dimon2x

    Dimon2x Старожил

    С нами с:
    26 фев 2012
    Сообщения:
    2.210
    Симпатии:
    185
  5. uri

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

    С нами с:
    3 сен 2009
    Сообщения:
    43
    Симпатии:
    1
    Текст
    Код (Text):
    1. echo 'Запись удалена: ' . $delid;
    отображается всегда, ибо не входит в if(){}
    Посмотрите, что там в $query. Возможно, записи с таким $delid нет.