⊗ppPmRdSWP 407 of 447 menu

Vetë-ridrejtimi me shtim të parametrave në PHP

Le të supozojmë se në faqen index.php transmetohet një parametër GET me emrin arg. Le të shfaqim përmbajtjen e tij në ekran:

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

Le të supozojmë se faqja jonë nuk mund të funksionojë si duhet pa parametrin GET. Në rastin tonë kjo është e vërtetë, sepse nëse parametri nuk transmetohet, atëherë aksesi në $_GET['arg'] do të shkaktojë një gabim.

Mund të lindë pyetja, pse në përgjithësi një person do të përfundojë në faqen tonë pa parametër? Në fund të fundit ne mund të vendosim lidhje kudo në faqen tonë me këtë parametër. Megjithatë, kjo nuk është garanci: përdoruesi i faqes sonë mund, për shembull, të kopjojë nga diku lidhjen dhe ta humbë parametrin. Ose thjesht ta fshijë rastësisht, duke edituar shiritin e adresave.

Në përgjithësi, në çdo rast kodi ynë duhet të parashikojë një situatë të tillë dhe të bëjë diçka me të. Çfarë mund të bëhet?

Mund të kontrollojmë nëse parametri ynë GET ekziston dhe ta shfaqim atë, vetëm nëse ekziston:

<?php if (isset($_GET['arg'])) { echo $_GET['arg']; } else { // reagojmë në një farë mënyre, p.sh. me një mesazh } ?>

Mund të bëhet më dinak:

<?php if (!isset($_GET['arg'])) { $_GET['arg'] = 'default'; // vlera e paracaktuar } echo $_GET['arg']; // garanton se do të shfaqë diçka pa gabim ?>

Ose mund të bëhet që kur hyni në faqe pa parametër të kryhet një ridrejtim në të njëjtën faqe me parametër:

<?php if (!isset($_GET['arg'])) { header('Location: ?arg=default'); } echo $_GET['arg']; // parametri është i garantuar të jetë i pranishëm ?>

Shpjegoni, cili është ndryshimi midis variantit të dytë dhe të tretë.

Le të supozojmë se në faqen page.php mund të transmetohet një numër me anë të parametrit GET me emrin num. Bëni që kur hyni pa këtë parametër, automatikisht të kryhet ridrejtimi në të njëjtën faqe, por me parametrin num me vlerën 1.

Shqip
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ne përdorim cookie për funksionimin e sajtit, analizën dhe personalizimin. Përpunimi i të dhënave bëhet në përputhje me Politikën e Privatësisë.
prano të gjitha konfiguro refuzo