Кнопка удаления для каждой строки таблицы

Мне удается успешно прочитать и отобразить данные из моей базы данных с помощью следующего кода: http://pastebin.com/rjZfBWZX Я также создаю кнопку удаления для каждой строки таблицы. Нажатие кнопки удаления вызывает «obrisi.php», который должен удалить эту строку, но я что-то испортил: S Вот код obrisi.php:

http://pastebin.com/mrFy1i7S

Я получаю ошибку Parse: синтаксическая ошибка, неожиданный «FROM» (T_STRING): S

Попробуем сделать это с _GET вместо _POST.

В главном коде вам нужно изменить строку 39 (вход):

echo "<td>" . " <input type='submit' id= '$id' . ' value='Delete' >" . "</td>"; 

чтобы:

  echo "<td><a href='obrisi.php?id=$id'>Delete</a></td>"; 

В вашей строке изменения obrisi.php 3 (установка идентификатора) из:

  $id = $_POST['id']; 

чтобы:

  $id = $_GET['id']; 

И, наконец, как приятное дополнение, перенаправите обратно на главную страницу, добавив следующую строку в конец файла obrisi.php до закрытия тега php.

  header('location:index.php'); 

Где index.php имя главной страницы, которое у вас есть.

 echo "<td>" . " <input type='submit' id= '$id' . ' value='Delete' >" . "</td>"; 

некоторые простые ошибки здесь. это будет выводиться (с $ id = 1):

 <td><input type='submit' id= '1' . ' value='Delete' ></td> 

эта строка должна быть исправлена

  echo '<td><input type="submit" id="' . $id . '" value="Delete" ></td>'; 

это тоже не так.

 echo "<form action="obrisi.php" method="post">"; 

должен выглядеть следующим образом:

 echo '<form action="obrisi.php" method="post">'; 

Но главная проблема заключается в том, что в сообщении нет идентификатора поля. Идентификатор элемента html не отправляется в submit. это в основном определить этот элемент в структуре HTML.

И при использовании кнопки отправки вам придется ограничить область формы этой строкой и использовать скрытое поле ввода или использовать ссылку, подобную той, которая предлагается

для уточнения: если вы хотите сделать это с помощью сообщения (но я бы предложил использовать $ _GET)

 while ($row = mysqli_fetch_array($result) ) { $id = $row['id']; echo "<tr>"; echo '<form action="obrisi.php" method="post">'; echo "<td>" . $row['Ime'] . "</td>"; echo "<td>" . $row['Prezime'] . "</td>"; echo "<td>" . $row['Grad'] . "</td>"; echo "<td>" . $row['Drzava'] . "</td>"; echo "<td>" . $row['Obavijesti'] . "</td>"; echo "<td>" . $row['Tekst'] . "</td>"; echo "<td>" echo '<td><input type="hidden" name="id" value="' . $id . '"/><input type="submit" value="Delete" ></td>'; echo "</form> echo "</tr>"; } 

и удалить эхо для формы из начала и конца скрипта.

в качестве дополнительной заметки здесь, если это будет в какой-то момент использоваться в живой системе, вам нужно проверить $ id в obrisi.php, что это на самом деле идентификатор, а не что-то неприятное и неожиданное, как больше sql, посмотрите вверх sql-инъекция.