⊗ppPmRdSWP 407 of 447 menu

Lencongan Sendiri dengan Penambahan Parameter dalam PHP

Katakan pada halaman index.php dihantar parameter GET dengan nama arg. Mari kita paparkan kandungannya pada skrin:

<?php echo $_GET['arg']; ?>

Katakan halaman kita tanpa parameter GET tidak boleh berfungsi dengan betul. Dalam kes kita, ini memang benar, kerana, jika parameter tidak dihantar, maka akses kepada $_GET['arg'] akan menyebabkan ralat.

Mungkin timbul persoalan, mengapa secara umumnya pengguna boleh masuk ke halaman kita tanpa parameter? Lagipun, kita boleh meletakkan pautan dengan parameter ini di mana-mana sahaja di laman web kita. Walau bagaimanapun, ini bukan jaminan: pengguna laman web kita mungkin, sebagai contoh, menyalin pautan dari suatu tempat dan kehilangan parameter tersebut. Atau secara tidak sengaja memadamnya, semasa mengedit bar alamat.

Secara umum, dalam mana-mana keadaan, kod kita harus menganggap keadaan sedemikian dan melakukan sesuatu mengenainya. Apa yang boleh dilakukan?

Kita boleh menyemak kewujudan parameter GET kita dan memaparkannya, hanya jika ia wujud:

<?php if (isset($_GET['arg'])) { echo $_GET['arg']; } else { // bertindak balas dengan cara tertentu, contohnya, dengan mesej } ?>

Kita boleh melakukan dengan cara yang lebih bijak:

<?php if (!isset($_GET['arg'])) { $_GET['arg'] = 'default'; // nilai lalai } echo $_GET['arg']; // dijamin akan memaparkan sesuatu tanpa ralat ?>

Atau kita boleh membuat supaya apabila masuk ke halaman tanpa parameter, berlaku lencongan ke halaman yang sama dengan parameter:

<?php if (!isset($_GET['arg'])) { header('Location: ?arg=default'); } echo $_GET['arg']; // parameter dijamin wujud ?>

Terangkan, apakah perbezaan antara pilihan kedua dengan pilihan ketiga.

Katakan pada halaman page.php boleh dihantar nombor menggunakan parameter GET dengan nama num. Buat supaya apabila masuk tanpa parameter ini, secara automatik dilakukan lencongan ke halaman yang sama, tetapi dengan parameter num dengan nilai 1.

Melayu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Kami menggunakan kuki untuk operasi laman web, analisis dan personalisasi. Pemprosesan data dijalankan mengikut Polisi Kerahsiaan.
terima semua tataletak tolak