$wpdb->prepareの書き方です。
ワードプレスからデータベースにアクセスする(情報を取得する)時にはSQLインジェクション対策のため、必ず$wpdb->prepareを使います。
※SQLインジェクションはハッキングのようなものです。
$wpdb->prepareの構文
$sql = $wpdb->prepare( SQL文, 変数1, [変数2 …] );
$query = $wpdb->get_results($sql);
$wpdb->prepareの書き方 例
1 2 | $sql=$wpdb->prepare("SELECT * FROM $wpdb->table WHERE id = %d name LIKE %s",$id,'%'.$name.'%'); $query=$wpdb->get_results($sql); |
例の意味:tableという名前のテーブルから、*(すべてのカラム)の情報を取得。ただし、idというカラムが$idに一致し、かつ、nameというカラムが$nameを含むものを抽出する。
1 2 | $sql=$wpdb->prepare("SELECT * FROM $wpdb->table WHERE id = %d name LIKE %s",$id,$name.'%'); $query=$wpdb->get_results($sql); |
例の意味:tableという名前のテーブルから、*(すべてのカラム)の情報を取得。ただし、idというカラムが$idに一致し、かつ、nameというカラムが$nameから始まるものを抽出する。
1 2 | $sql=$wpdb->prepare("SELECT * FROM $wpdb->table WHERE id = %d name LIKE %s",$id,'%'.$name); $query=$wpdb->get_results($sql); |
例の意味:tableという名前のテーブルから、*(すべてのカラム)の情報を取得。ただし、idというカラムが$idに一致し、かつ、nameというカラムが$nameで終わるものを抽出する。
コメント