답변:
항상 사용하는 prepare
것이 가장 좋지만 주된 용도는 SQL 주입 공격을 방지하는 것입니다. 사용자 / 방문자의 입력이 없거나 쿼리에 영향을 줄 수 없으므로 현재 예제에서는 문제가되지 않습니다.
그러나 내가 그것을 사용하는 것이 가장 좋은 연습 전에 전에 말했듯이 일단 사용을 시작하면 멈추지 않으므로 예제에서는 다음과 같이 사용할 수 있습니다.
global $wpdb;
$tablename = $wpdb->prefix . "my_custom_table";
$sql = $wpdb->prepare( "SELECT * FROM %s ORDER BY date_created DESC",$tablename );
$results = $wpdb->get_results( $sql , ARRAY_A );
코덱 을 사용하는 방법에 대한 자세한 내용은
$tablename = $wpdb->prefix . "my_custom_table"; $concert_id = 1; $sql = "SELECT * FROM " . $tablename . " WHERE concert_id = %d LIMIT 1;"; $prep_sql = $wpdb->prepare( $sql, $concert_id ); $get_concerts = $wpdb->get_results( $prep_sql , ARRAY_A );
그리고 훌륭하게 작동합니다! 왜 그런지 잘 모르겠습니다. 그러나 나는 어쨌든 지금 그것을 얻는다!
SELECT * FROM `wp_my_custom_table`
. 큰 따옴표 지원을 사용할 수 있지만 다음과 같이 표시되어야합니다 SELECT * FROM "wp_my_custom_table"
.