Попытка удалить строку из базы данных (phpmyadmin) onclick

Попытка удалить строку после нажатия кнопки удаления, но даже без ошибки, это не сработает. Сначала я подумал, что это связано с операторами if, но ничего не изменилось ... Вот мой код удаления! Есть ли другой способ? Спасибо

<?php
                echo "<table>
                          <caption>Λίστα Χρηστών</caption>
                          <thead>
                            <tr>
                              <th scope='col'>Ιd</th>
                              <th scope='col'>Χρήστης</th>
                              <th scope='col'>Διαγραφή</th>
                            </tr>
                          </thead>";
                  $servername = "localhost";
                  $username = "root";
                  $password = "";
                  $db = "aws_chat";


                  // Create connection
                  $conn = new mysqli($servername, $username, $password, 
                  $db);
                  // Check connection

                  $sql = "SELECT username,email,id FROM users WHERE 
                  user_type='user'";
                  $result = $conn->query($sql);

                  if ($result->num_rows > 0) {
                      // output data of each row

                  if (isset($_GET['del'])) {
                        $del = $_GET['del'];
                        //SQL query for deletion.
                        $sql_del = "DELETE * FROM users WHERE id=$del";
                    }
                      while($row = $result->fetch_assoc()) {
                          echo "<tbody>
                                    <tr>
                                      <td>".$row["id"]."</td>
                                      <td>".$row["username"] ."</td>
                                      <td><a href='delete_user.php?del= 
                      {$row['id']}'><input type='button' class='btn_del' 
                      value='Delete'/></td>
                                    </tr>
                                </tbody>
                                  <tfoot>

                                  </tfoot>";
                      }
                  } else {
                      echo "0 results";
                  }
                  echo "</table>";

                  ?>
            </center></div>

Вы устанавливаете $sql_del, но никогда не выполняете его, вы также должны использовать подготовленные операторы.

Nigel Ren 28.11.2018 12:19
DELETE * FROM users WHERE id=$del, который неверен, должен быть DELETE FROM users WHERE id=$del, также используйте подготовленные операторы
Masivuye Cokile 28.11.2018 12:19

после $sql_del = "DELETE * FROM users WHERE id=$del"; добавить $stmt= $conn->query($sql_del );

Masivuye Cokile 28.11.2018 12:19

Шаг первый: решите, хотите ли вы ссылку или кнопку - у вас не может быть и того, и другого, вложение input в a является недопустимым HTML.

misorude 28.11.2018 12:22

Спасибо, что сработало! Не верил, что так будет :)

L-Drac WarThorn 28.11.2018 12:27
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
5
55
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

изменять

DELETE * FROM users WHERE id=$del

к

DELETE FROM users WHERE id=$del

проверьте isset ($ _ GET ['del']), который возвращает истину, когда вы нажимаете кнопку удаления!

Ali Ghalambaz 28.11.2018 12:32

Пожалуйста, добавьте пояснения к вашему коду, чтобы другие могли извлечь из него уроки.

Nico Haase 28.11.2018 13:00
Ответ принят как подходящий
//SQL query for deletion.
$sql_del = "DELETE FROM users WHERE id='".$del."' ";
$conn->query($sql_del); // you missed this line which is required to delete the record from database

Почему OP должен попробовать этот код? Что ты изменил? Почему у тебя работает?

brombeer 28.11.2018 12:23

это $ conn-> query ($ sql_del);

Parvej Alam 28.11.2018 12:25

@ParvejAlam до обновления у вас был $sql_del = "DELETE * FROM users WHERE id=$del";, что не так

Masivuye Cokile 28.11.2018 12:33

Пожалуйста, добавьте пояснения к вашему коду - такой длинный ответ действительно бесполезен, если OP не может определить точные части, которые имеют значение.

Nico Haase 28.11.2018 13:01

Другие вопросы по теме