Здравствуйте! Хочу вывести и удалить с таблицы пользователей через ссылку (есть колонка - Удаления) PHP: <html> <head> <meta http-equiv="content-type" content="text/html" charset="utf-8"> </head> <body> <!-- 24. Выведите на экран таблицу всех работников (см. задачу №4, только без колонки 'удаление'). --> <?php require_once('connect.php'); mysqli_query($conn, "SET NAMES 'utf8'"); $query = "SELECT * FROM users "; $result = mysqli_query($conn, $query); if(isset($_REQUEST['del_id'])){ $query2 = "DELETE FROM users WHERE id=".$_REQUEST['del_id'].""; $result2 = mysqli_query($conn, $query2); } for($data = array(); $row = mysqli_fetch_assoc($result); $data[] = $row); ?> <table width = "100px" border = 1px> <tr> <th>id</th> <th>name</th> <th>age</th> <th>salary</th> <th>delete</th> </tr> <?php foreach ($data as $item) { ?> <tr> <td><?php echo $item['id'] ?></td> <td><?php echo $item['name'] ?></td> <td><?php echo $item['age'] ?></td> <td><?php echo $item['salary'] ?></td> <td><a href="index24.php?del_id = "<?php $item['id']?>"">Удалить</a></td> </tr> <br/> <?php } ?> </table> Всё выводиться верно(я про таблицу) а удалять, не удаляется(при нажатии на ссылку) Помогите пожалуйста! P.S. Я не знаю как экспортировать sql данные из OpenServer поэтому не могу представить вам таблицу users, извините! Надеюсь, что по коду будет ясно, в чём проблема...
На будущее, есть PHPmyAdmin или через консоль с mysql. Всё это есть в сборке OpenServer В этот блок заходит при нажатии удалить? Если с выяснением нужна помощь: отладка/debug http://phpfaq.ru/debug https://netbeans.org/kb/docs/php/debugging_ru.html https://php.ru/forum/threads/howto-...i-po-shagam-i-s-kartinkami.58974/#post-474550
Если ошибка, то текст ошибки надо прикладывать. Вот тут какая-то вакханалия происходит. Сделай вот так: PHP: <a href="index24.php?del_id=<?php echo $item['id']; ?>"> Никаких пробелов в ссылке быть не должно. А тут так: PHP: [LIST=1] [*]if(isset($_GET['del_id'])){ // изменил тут [*] $query2 = "DELETE FROM users WHERE id=".$_REQUEST['del_id']; //исправил тут [*] $result2 = mysqli_query($conn, $query2); [*] } [/LIST] И я бы DELETE поставил перед SELECT чтобы сразу видеть результат удаления. Ты же сначала выбираешь, потом удаляешь, а потом выводишь выбранное до удаления и удаленная строка отображается на странице, а её в базе уже нет. --- Добавлено --- "[ LIST=1 ]" - я этоого не писал)) это форумная магия какая то)) 4 строки по отдельности забери. И да, я мог чего то не заметить...
Заработало)) Спасибо большое за помощь! Я новичок и синтаксис меня пока убивает) . И что касается ошибки... Вы правильно заметили! Просто ошибки вообще никакой не было. Все выводилось в таблицу, но ничего не работало! В любом случае, на будущем, возьму на заметку и буду предупреждать! И спасибо, что подсказали с DELETE в начале! Это действительно большая разница) Удаляется сразу!
А где с этим пониманием встретиться)? Не всегда в учебниках всё рассказывают! Например, о том, как работают вложенные в друг друга for , я сам понял! А в учебниках(и вебинарах) об этом не слова! Наверное всё с опытом приходит... Или есть нормальные ресурсы по php и sql? Меня лично интересует знание по построению таблиц(нормализация) и связи между ними. вывод данных с нескольких таблиц и принцип работы команд данных выводов.
Моё знакомство с программированием было в 9 классе, а это было лет 15 назад. Поэтому подробностей не помню. Да.