Php 使用PDO和javascript删除多个

Php 使用PDO和javascript删除多个,php,javascript,mysql,pdo,Php,Javascript,Mysql,Pdo,我当前的脚本有问题。我正在使用PDO和ajax删除一条记录。我使用以下代码通过mysql和PDO调用这些图像: <?php $stmt = $db->query('SELECT * FROM img_slider ORDER BY id '); while($row = $stmt->fetch(PDO::FETCH_ASSOC)) { echo " <li id='{$row['id']}'> <div class='imgHover'> <d

我当前的脚本有问题。我正在使用PDO和ajax删除一条记录。我使用以下代码通过mysql和PDO调用这些图像:

<?php 
$stmt = $db->query('SELECT * FROM img_slider ORDER BY id ');
while($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
echo "
<li id='{$row['id']}'>
<div class='imgHover'>
<div class='hover'>
<a href='delete.php?id={$row['id']}' class='deleteitem' ><img src='../img/delete.png'></a></div>
<img src='{$row['path']}'>
</div>
</li>";
}
我想删除不同行中的多条记录,因此我使用以下PDO代码执行删除:

require("common.php"); 
if(empty($_SESSION['user'])) { header("Location: login.php"); die("Redirecting to login.php"); } 

$id = $_GET['id'];

$pdo->beginTransaction();
$st = $pdo->prepare('DELETE FROM img_nav WHERE id = :id');
$st->execute(array(':id', $id));
$st = $pdo->prepare('DELETE FROM img_slider WHERE id = :id');
$st->execute(array(':id', $id));
$st = $pdo->prepare('DELETE FROM img_landing WHERE id = :id');
$pdo->commit();

我曾尝试直接链接到
delete.php
,但没有使用javascript,chrome simple给了我一个服务器错误。我在这里做的一切都对吗?我只是一个初学者,英语不太好,如果有任何建议,我将不胜感激。

首先,不应收到更改数据的请求,请使用
POST
。(听说过预抓取浏览器吗?它们存在…它们将删除该批次…)。如果chrome给您一个服务器错误,那么脚本在某个地方遇到了致命错误。要知道哪个错误,请参阅。@Wrikken感谢您帮助我定义错误本身。我发现错误出现在第11行,我得到了对非对象上的成员函数beginTransaction()的
调用
我会到处搜索,但对此错误有什么建议吗?听起来好像你没有创建PDO对象
$PDO
。在另一个脚本中它被称为
$db
。。。你是说那个对象吗?@Wrikken使用了
$db
,得到了一个
无效的参数号:绑定变量的数量与令牌的数量不匹配
错误,仍在尝试对此进行故障排除。
require("common.php"); 
if(empty($_SESSION['user'])) { header("Location: login.php"); die("Redirecting to login.php"); } 

$id = $_GET['id'];

$pdo->beginTransaction();
$st = $pdo->prepare('DELETE FROM img_nav WHERE id = :id');
$st->execute(array(':id', $id));
$st = $pdo->prepare('DELETE FROM img_slider WHERE id = :id');
$st->execute(array(':id', $id));
$st = $pdo->prepare('DELETE FROM img_landing WHERE id = :id');
$pdo->commit();