Saya mencari cara di mana saya dapat mencetak kueri sql yang dieksekusi setelah:
$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)
);
Ini akan bagus jika saya bisa melihat nilai apa yang terjadi dalam kueri.
Terima kasih
Jawaban:
The
$wpdb
objek memiliki beberapa sifat mendapatkan set untuk itu:Catatan: Pertama-tama Anda harus mengatur file
define( 'SAVEQUERIES', true );
Andawp-config.php
di folder root WordPress.sumber
defined( 'SAVEQUERIES', true );
berada di skrip Andawp-config.php
atau sesuatu! defined( 'SAVEQUERIES' ) AND defined( 'SAVEQUERIES', true );
di skrip Anda? Kalau tidak, itu tidak akan berhasil.Saya telah mendaftarkan 3 pendekatan di sini:
SAVEQUERIES
dan mencetak semua pertanyaan di footer$wpdb->last_query
untuk mencetak hanya permintaan terbaru yang dijalankan, ini berguna untuk fungsi debugging.Anda harus menambahkan ini di wp-config.php Anda
Kemudian di bagian bawah kaki tema Anda tambahkan kode ini:
Atau jika Anda ingin mencetak kueri yang terakhir dieksekusi, Anda dapat menggunakan ini tepat di bawah
$wpdb
panggilan fungsi kueri Anda .Pendekatan ke-3 adalah menggunakan plugin seperti Query Monitor yang mencantumkan semua pertanyaan yang dieksekusi pada halaman secara detail, dan detail lain yang terkait dengannya seperti berapa banyak baris yang dikembalikan dan waktu yang dibutuhkan untuk eksekusi atau jika itu adalah permintaan yang lambat. http://wordpress.org/plugins/query-monitor/
Sebaiknya gunakan plugin ini di lingkungan DEV saja dan jangan dibiarkan diaktifkan di situs langsung. Juga, Monitor Kueri kadang-kadang dapat menyebabkan masalah dengan halaman Anda, Seperti kesalahan 5XX pada template / halaman Anda jika ada terlalu banyak kesalahan.
sumber
Anda harus menambahkan kedua fungsi, jika tidak maka tidak akan pernah menampilkan kesalahan
Fungsi ini akan menunjukkan kepada Anda kesalahan yang tepat seperti ini
sumber
Saya ingin menambahkan bahwa jawaban terbaik yang dipilih oleh @kaiser tidak sepenuhnya benar:
Kembalinya adalah ARRAY , bukan string. Jadi untuk menampilkan kueri terakhir Anda harus melakukan ini:
sumber