web-dev-qa-db-ja.com

カスタムテーブルで$ wpdbを使って削除する方法

$ wpdb関数を使う上で良いリソースを見つけるのに苦労しています。

ELearning_progressという名前のカスタムテーブルから行を削除しようとしています。

$removefromdb = $wpdb->query("DELETE FROM eLearning_progress WHERE ID = '$user_id' AND module_id = '$singlecomparearrays_remove'" );

削除したい行のIDは '$ user_id'、 'module_id'は '$ singlecomparearrays_remove'です。

私も試してみました:

$removefromdb = $wpdb->query( "DELETE FROM eLearning_progress WHERE ID = ($user_id) AND module_id = ($singlecomparearrays_remove)" );

その後:

$removefromdb = $wpdb->query($wpdb->prepare("DELETE FROM eLearning_progress WHERE ID = %s AND module_id = %s", $user_id, $singlecomparearrays_remove));

私の試みであまり大声でため息をついないようにしてください。しかし、変数を含んだDELETEコマンドを使用するための良いガイドも見つけることができません。任意の助けは大歓迎です。

よろしく、アレックス

5
Alex Green

行を削除するには delete() 関数を使うべきです。

カスタムテーブル 'eLearning_progress'の生の 'ID'を削除する簡単な例。

$id = 0815;
$table = 'eLearning_progress';
$wpdb->delete( $table, array( 'id' => $id ) );

しかし、私はあなたがあなたのテーブル 'eLearning_progress'でどのrawを削除するのかわかりませんか?たぶんあなたはそれをもっとよく理解するために質問を強化します。

9
bueltge

それでも、あなたのSQLが$wpdb->deleteを使っても問題を起こしている可能性があります。

  1. $wpdb->show_errors();before 問い合わせを呼び出す
  2. enable デバッグモードでdefine( 'WP_DEBUG', true );wp-config.php
0
Adi Prasetyo