-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