Почему wpdb-prepare() с переданной переменной не работает

#wordpress

#wordpress

Вопрос:

Следующее использование wpdb-gt;подготовка возвращает пустые результаты, в то время как приведенный ниже код без использования wpdb-gt;gt;подготовка возвращает правильные результаты. Что случилось?

 global $wpdb;  $query = $wpdb-gt;prepare("select subid, firstname, lastname from wpks_members where member_id = %d,".$mid); $row= $wpdb-gt;get_row($query);  $query = $wpdb-gt;prepare("select t.subid, t.testid, t.test_date, t.puzzle_score,t.clock_score,t.match_score,t.oddone_score,(t.puzzle_score t.clock_score t.match_score t.oddone_score) as tot,  if((t.puzzle_score t.clock_score t.match_score t.oddone_score) lt; 90, 'Yes', 'No') as refer, u.ufname, u.ulname  from wpks_results t  join wpks_hasi_users u on t.userid = u.userid where t.member_id = %d,".$mid); $rows = $wpdb-gt;get_results($query);  //this below works  $row= $wpdb-gt;get_row("select subid, firstname, lastname from wpks_members where member_id = ".$mid);  $query = $wpdb-gt;prepare(); $rows = $wpdb-gt;get_results("select t.subid, t.testid, t.test_date, t.puzzle_score,t.clock_score,t.match_score,t.oddone_score,(t.puzzle_score t.clock_score t.match_score t.oddone_score) as tot,  if((t.puzzle_score t.clock_score t.match_score t.oddone_score) lt; 90, 'Yes', 'No') as refer, u.ufname, u.ulname  from wpks_results t  join wpks_hasi_users u on t.userid = u.userid where t.member_id = ".$mid);  

Ответ №1:

Это должно быть:

 $query = $wpdb-gt;prepare("select subid, firstname, lastname from wpks_members where member_id = %d", $mid);