2

テーブルから削除したいのですが、これは関数です。

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);

エラーは発生せず、テーブルから何も削除されません。しかし、変数なしで実行しようとすると、完全に機能しますが、このコードの何が問題なのですか?

4

1 に答える 1

-1

このようなことを試してみてください。好きな変数を準備するとは思わない

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

これで問題が解決した場合は、SQL をエコーアウトして、phpmyadmin または mysql ターミナル (ある場合) で試してみてください。

于 2013-02-09T16:43:58.837 に答える