Rumah  >  Soal Jawab  >  teks badan

Pengekodan/penyahkodan URL PHP

<p>Saya menggunakan penyelesaian yang diterima dalam soalan ini untuk menyulitkan id, contohnya dalam <strong>/index.php?id=3</strong>. Masalahnya ialah saya tidak boleh menghantar nilai yang disulitkan sebagai url seperti <strong>/index.php?id=dsf13f3343f23/23=</strong>. Kerana kadangkala terdapat aksara pelik dalam URL, contohnya, perhatikan simbol <kod>=</code>
P粉512363233P粉512363233454 hari yang lalu567

membalas semua(2)saya akan balas

  • P粉214176639

    P粉2141766392023-08-15 10:44:53

    Gunakan fungsi urlencode() PHP untuk mengekod nilai sebelum meletakkannya dalam URL.

    Fungsi ini menukar aksara "pelik", seperti =, kepada format yang selamat untuk dimasukkan ke dalam URL. Anda boleh menggunakannya seperti ini:

    Header('Location: /index.php?id=' . urlencode($id))

    balas
    0
  • P粉346326040

    P粉3463260402023-08-15 09:23:14

    Aksara pelik dalam nilai yang dihantar dalam URL hendaklah dilepaskan menggunakan urlencode().

    Contohnya, coretan kod berikut:

    echo urlencode('dsf13f3343f23/23=');

    akan memberi:

    dsf13f3343f23%2F23%3D

    Sebagai parameter URL, ini sah.

    Jika anda ingin membina rentetan pertanyaan dengan berbilang parameter, lihat fungsi
    http_build_query().

    Contohnya:

    echo http_build_query(array(
        'id' => 'dsf13f3343f23/23=',
        'a' => 'plop',
        'b' => '$^@test', 
    ));

    akan memberi:

    id=dsf13f3343f23%2F23%3D&a=plop&b=%24%5E%40test

    Fungsi ini secara automatik akan mengendalikan pelarian dan penyambungan parameter;-)

    balas
    0
  • Batalbalas