-2
我使用的CRUD刪除方法,它爲我的作品,但是當我用不同的數據庫和表試了一下它口口聲聲說「提供了無效的參數爲的foreach()」CRUD刪除不工作了
這是我的「vacature-verwijderen.php」,你應該能夠將其刪除
<div>
<table id="tabel">
<thead>
<tr>
<th>Functie</th>
<th>Omschrijving</th>
<th>Salaris</th>
</tr>
</thead>
<tbody>
<?php
include 'database.php';
$pdo = Database::connect();
$sql = 'SELECT * FROM vacature ORDER BY id DESC';
foreach ($pdo->query($sql) as $row) {
echo '<tr>';
echo '<td>'. $row['functie'] . '</td>';
echo '<td>'. $row['omschrijving'] . '</td>';
echo '<td>'. $row['salaris'] . '</td>';
echo '<td width=250>';
echo '<a class="button " href="update.php?id='.$row['id'].'">Update</a>';
echo ' ';
echo '<a class="button" href="delete.php?id='.$row['id'].'">Delete</a>';
echo '</td>';
echo '</tr>';
}
Database::disconnect();
?>
</tbody>
</table>
</div>
</div>
,然後當你點擊刪除你去「delete.php」它看起來像這樣
<?php
require 'database.php';
$id = 0;
if (!empty($_GET['id'])) {
$id = $_REQUEST['id'];
}
if (!empty($_POST)) {
$id = $_POST['id'];
$pdo = Database::connect();
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = "DELETE FROM vacature WHERE id = ?";
$q = $pdo->prepare($sql);
$q->execute(array($id));
Database::disconnect();
header("Location: vacature-verwijderen.php");
}
?>
我不Ť知道什麼是錯誤的,因爲它使用的工作,也是我的數據庫表看起來像這樣
請查找錯誤信息。從你的屏幕截圖:你想刪除* id *。但沒有列名* id * – BenRoob
@ BenRoob我的上帝,我很抱歉,我實際上不知道它是什麼,但就是這樣。非常感謝 – Melissa