Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Melumpuhkan Petikan Ajaib dan Mengendalikan Isu Sisipan Garisan Belakang dalam PHP?
"Slash Before Every Quote" Enigma
Anda telah menghadapi isu pelik dalam skrip PHP anda: setiap kali borang diserahkan kepada dirinya sendiri dengan nilai yang mengandungi petikan berganda, ia menambah garis miring ke belakang sebelum setiap satu. Tingkah laku ini dikaitkan dengan ciri "petikan ajaib" PHP yang terkenal.
Petikan ajaib secara automatik melarikan diri daripada aksara tertentu, termasuk petikan berganda, untuk mengelakkan suntikan berniat jahat. Walaupun ini mungkin kelihatan seperti langkah keselamatan, ia juga boleh menyebabkan masalah seperti yang anda alami.
Untuk menyelesaikannya, masukkan coretan kod berikut ke dalam skrip anda:
<code class="php">if (get_magic_quotes_gpc()) { $your_text = stripslashes($your_text); }</code>
Fungsi get_magic_quotes_gpc() menyemak sama ada petikan ajaib didayakan. Jika ya, fungsi stripslashes() mengalih keluar garis miring ke belakang tambahan daripada teks anda.
Risiko Melumpuhkan Petikan Sihir
Anda telah menyatakan bahawa anda mempunyai akses root kepada anda pelayan dan sedang mempertimbangkan untuk melumpuhkan petikan sihir. Adalah penting untuk mengetahui potensi risiko:
Kesimpulan
Walaupun melumpuhkan petikan ajaib boleh menyelesaikan masalah semasa anda, ia penting untuk melaksanakan pengesahan input yang teguh dan amalan sanitasi untuk mencegah pelanggaran keselamatan. Berhati-hati menimbang potensi risiko sebelum membuat keputusan ini dan pastikan kod anda sentiasa selamat tanpa mengira status petikan ajaib.
Atas ialah kandungan terperinci Bagaimana untuk Melumpuhkan Petikan Ajaib dan Mengendalikan Isu Sisipan Garisan Belakang dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!