【问题标题】:Delete from table with variables not working从表中删除变量不起作用
【发布时间】:2013-02-06 22:47:40
【问题描述】:

我想从我的表中删除这是函数,

function deleteFromTable($table, $file_upload_id, $dbh) {
    $deleteTable = $dbh->prepare("DELETE FROM ".$table." WHERE upload_id = ?");
    $deleteTable->execute(array($file_upload_id));
    $deleted = $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    print_r($deleted);exit;
}
deleteFromTable('reimbursment_id', '76', $dbh);

我没有收到任何错误,也没有从我的桌子上删除任何东西;但是当我尝试不使用变量时它可以完美运行,这段代码有什么问题?

【问题讨论】:

  • 我试过你的代码,它工作正常,问题可能出在其他地方。
  • 知道你传入了正确的变量吗?
  • @Blowski 是的,我知道,我什至在函数中完美地打印出来了。
  • 我试了一下。祝你有美好的一天......
  • @Giovanni Sferro 问题是我将$file_upload_id 作为数组传递了两次,现在它也适用于我,感谢大家的帮助。

标签: php mysql pdo


【解决方案1】:

试试这样的。不要以为准备喜欢变量

$sth = $dbh->prepare('DELETE FROM :table WHERE id = :id');
$sth->execute(array(':table' => $table, ':id' => $file_upload_id));

如果完成了这项工作,请尝试回显 sql 并在 phpmyadmin 或 mysql 终端中尝试。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-06
    • 2016-08-29
    • 1970-01-01
    • 1970-01-01
    • 2014-12-22
    • 1970-01-01
    相关资源
    最近更新 更多