Cara untuk memasukkan pangkalan data dan melaksanakan operasi melarikan diri dalam PHP: 1. Tetapkan item magic_quotes_gpc 2. Hidupkan item magic_quotes_runtime 3. Hidupkan item magic_quotes_sybase secara automatik.
Persekitaran pengendalian artikel ini: sistem Windows 7, PHP versi 7.1, komputer DELL G3
Bagaimanakah php dimasukkan ke dalam pangkalan data dan melakukan operasi melarikan diri?
Pemprosesan rentetan khas PHP apabila menulis ke pangkalan data (bila hendak melepaskan aksara khas)
Apabila memproses data MySQL dan GET dan POST, selalunya perlu untuk Petikan telah melarikan diri.
Terdapat tiga tetapan dalam PHP yang boleh menukar secara automatik ' (petikan tunggal), " (petikan berganda), (sentak belakang) dan aksara NULL.
PHP memanggilnya petikan ajaib , tiga tetapan ini ialah
magic_quotes_gpc
yang mempengaruhi data permintaan HTTP (GET, POST dan COOKIE) dan tidak boleh ditukar pada masa jalankan
Apabila ini didayakan, data yang dihantar melalui GET, POST dan COOKIE akan dikeluarkan secara automatik
Contohnya, test.php?id=abc'de"f
<.>echo $_GET['id. ']; # Anda akan mendapat abc'de"fmagic_quotes_gpc=On; Ini dihidupkan dan tidak mempunyai kesan pada penulisan ke pangkalan data, seperti $_GET['id '] di atas apabila ditulis kepada pangkalan data, ia masih abc'de"f,Sebaliknya, jika magic_quotes_gpc=Off; maka aksara mesti mempunyai tanda petikan (tidak kira tanda petikan tunggal atau tanda petikan berganda), dan menulis terus ke mysql secara langsung akan menjadi kosong tetapi jika anda menulisnya ke dokumen dan bukannya mysql. Kemudian ia akan menjadi abc'de"fmagic_quotes_runtime
Jika dihidupkan, kebanyakan fungsi yang mendapatkan data daripada sumber luaran dan mengembalikannya, termasuk daripada pangkalan data dan fail teks , data yang dikembalikan akan dilepaskan dengan garis miring ke belakang . Jika kedua-dua pilihan dihidupkan, petikan tunggal akan terlepas. Petikan berganda, garis miring ke belakang dan aksara NULL tidak akan terlepas.Langkah Balas 1: Ubah suai fail php.ini (Saya tidak akan pergi ke kaedah mengubah suai php.ini, anda boleh google)Langkah Balas 2: Batalkan pelarian
Langkah 1: Cari data yang anda serahkan seperti $_POST['content'] dan tukarkannya kepada $content=stripslashes($_POST['content']);
我表单内容本来是:<img alt=”" width=”400″ height=”300″ src=”/Upfiles/201105/images/1306657040.jpg” /> <img alt=\”\” width=\”400\” height=\”300\” src=\”/Upfiles/201105/images/1306657040.jpg\” />
Atas ialah kandungan terperinci Bagaimana untuk memasukkan ke dalam pangkalan data dan melaksanakan operasi melarikan diri dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!