Rumah >pembangunan bahagian belakang >tutorial php >Mengapa Output JSON MySQL Saya Menunjukkan Nilai NULL untuk Medan Penerangan?

Mengapa Output JSON MySQL Saya Menunjukkan Nilai NULL untuk Medan Penerangan?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-09 20:37:13543semak imbas

Why Does My MySQL JSON Output Show NULL Values for Description Fields?

Output JSON MySQL: Nilai Null Tersembunyi

Apabila menggunakan json_encode() untuk menukar data pangkalan data kepada JSON, nilai NULL yang tidak dijangka boleh timbul, menghalang integriti data. Artikel ini meneroka sebab perihalan mengembalikan NULL dalam coretan kod yang disediakan dan menawarkan penyelesaian untuk menyelesaikan isu tersebut.

Coretan kod mendapatkan semula rekod daripada jadual pangkalan data MySQL bernama kakitangan dan cuba mengekod hasil ke dalam format JSON. Walau bagaimanapun, medan perihalan mengembalikan NULL dalam output JSON, walaupun mengandungi data dalam pangkalan data.

Punca isu ini terletak pada pengekodan aksara. MySQL mungkin tidak mendapatkan semula data dalam pengekodan UTF-8, yang membawa kepada ketidakkonsistenan pengekodan dan nilai NULL untuk aksara bukan UTF-8.

Untuk membetulkan masalah, tambah mysql_query('SET CHARACTER SET utf8') sebelum PILIH pertanyaan. Ini menetapkan set aksara untuk sambungan pangkalan data, memastikan data diambil dalam pengekodan UTF-8.

Selepas melaksanakan pengubahsuaian ini, json_encode() akan mengendalikan aksara UTF-8 dengan betul dalam medan perihalan dan JSON output akan mewakili data pangkalan data dengan tepat.

Atas ialah kandungan terperinci Mengapa Output JSON MySQL Saya Menunjukkan Nilai NULL untuk Medan Penerangan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn