Как распечатать высушенный sql сразу после его выполнения

Я ищу способ, которым я могу распечатать выполненный SQL-запрос сразу после:

$wpdb->query( $wpdb->prepare("INSERT INTO tbl_watchprosite SET keywords=%s,url_to_post=%s,description=%s, date_captured=%s,crawl_id=%d, image_main=%s,images=%s,brand=%s, series=%s,model=%s,condition=%s,box=%s, papers=%s,year=%s,case_size=%s,status=%s,listed=%s, asking_price=%s,retail_price=%s,payment_info=%s,forum_id=%d", $this->getForumSettings()->search_meta,$element->href,$post_meta['description'],current_time('mysql'),$cid,$post_meta['image_main'],$images,$post_meta[0],$post_meta[1],$post_meta[2],$post_meta[3],$post_meta[4],$post_meta[5],$post_meta[6],$post_meta[7],$status,$post_meta[9],$post_meta[10],$post_meta[11],$this->getForumSettings()->ID) ); 

Это было бы здорово, если бы я мог видеть, какие значения идут в запросе.

благодаря

Solutions Collecting From Web of "Как распечатать высушенный sql сразу после его выполнения"

Объект $wpdb имеет некоторые свойства, устанавливаемые для этого:

 // Print last SQL query string $wpdb->last_query // Print last SQL query result $wpdb->last_result // Print last SQL query Error $wpdb->last_error 

Обратите внимание, что вы получите результат только после того, как вы defined( 'SAVEQUERIES', true ); в вашем wp-config.php .

Добавьте это в свой wp-config.php

  define('SAVEQUERIES', true); 

Затем в нижнем колонтитуле вашей темы поставьте следующее:

  <?php if (current_user_can('administrator')){ global $wpdb; echo "<pre>"; print_r($wpdb->queries); echo "</pre>"; }//Lists all the queries executed on your page ?> 

Также вы можете использовать

 global $wpdb; echo $wpdb->last_query;//lists only single query 

на странице запроса после запроса;

Вы должны добавить обе функции, иначе никогда не будет отображаться ошибка

 $wpdb->show_errors(); $wpdb->print_error(); 

Эта функция покажет вам правильную ошибку, подобную этой

введите описание изображения здесь

Я хотел добавить, что лучший ответ на голосование от @kaiser не совсем корректен:

 // Print last SQL query string $wpdb->last_query 

Возврат – это ARRAY , а не строка. Поэтому для вывода последнего запроса вы должны сделать следующее:

 echo 'Last query: '.var_export($wpdb->last_query, TRUE);