Я пытаюсь удалить строку в базе данных SQL по id. Я нашел здесь вопросы, связанные с этим, но ничего не работает, возможно, потому, что моя страница заполнена (динамически?) На основе выбора переменной. Строки отображаются на моей странице на основе раскрывающегося списка (locationlab), и после каждой строки у меня есть кнопка удаления. It looks like this.SQL Delete Row по id
У меня есть идентификатор, временно отображаемый в конце строки, просто убедитесь, что код видит переменную (& он делает!).
Код для заполнения страницы выглядит следующим образом:
<?php
$locationlab = $_POST[locationlab];
$sql = "SELECT * FROM lab WHERE locationlab LIKE '{$locationlab}'";
echo($locationlab);
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo'
<table>
<form action=testpage2.php method=post>
<td width="10%"><input type=text name=make value='. $row["make"].'></td>
<td width="10%"><input type=text name=model value='. $row["model"].'></td>
<td width="20%"><input type=text name=hostname value='. $row["hostname"].'></td>
<td width="15%"><input type=text name=ipaddress value='. $row["ipaddress"].'></td>
<td width="20%"><input type=text name=ipmiipaddress value='. $row["ipmiipaddress"].'></td>
<td width="15%"><input type=text name=terminalserveraddress value='. $row["terminalserveraddress"].'></td>
<td width="10%"><input type=text name=locationlab value='. $row["locationlab"].'></td>
<td><input type=submit name=update value=update></td>
<td><input type=submit name=delete value=delete></td>
<td id=id name=id value='. $row["id"].'>'. $row["id"].'</td>
</table>
</form>';
}}
?>
Я могу ввести SQL запрос ниже вручную на странице PhpMyAdmin, так что я знаю, что это правильно. Код для кнопки Delete выглядит следующим образом:
<?php
if(isset($_POST['delete'])) {
$deletequery = ("DELETE * FROM lab WHERE ='$_POST[id]'");
mysql_query($deletequery, $conn);
};
?>
При нажатии на кнопку удаления он появляется, чтобы обновить страницу, но ничего не меняется. Я предполагаю, что если я смогу заставить кнопку удаления работать, обновление будет работать аналогичным образом, но пока я в тупике.
Ее даже не туманно правильно '" DELETE FROM WHERE лаборатории SOME_COLUMN_NAME = '{$ _POST [' ID ']}' "' – RiggsFolly
Пожалуйста, не используйте [расширение базы данных mysql_'] (http://stackoverflow.com/questions/12859942/why-shouldnt-i-use-mysql-functions-in-php), оно устарело (ушло навсегда в PHP7) Специально, если вы просто изучаете PHP, потратьте свои силы на изучение расширений базы данных «PDO». [Начать здесь] (http://php.net/manual/en/book.pdo.php) – RiggsFolly