PHP-de parametr goşmak bilen öz-özüne gönükme
Sahypada index.php
arg atly GET parametri ýollarylsyn.
Onuň mazmunyny ekrana çykaralyň:
<?php
echo $_GET['arg'];
?>
Sahypamyz GET parametrisiz işläp bilmeýär diýeliň.
Bizim ýagdaýymyzda bu hakykat-da, sebäbi parametr
berlen bolmasa, $_GET['arg'] çagyryşy
ýalňyşlyga getirer.
Adam nämä üçin parametrisiz sahypamyza girer diýen sorag ýüze çykyp biler. Elbetde, biz sahypamyzyň ähli ýerlerine şu parametr bilen çykgytlar goýup bileris. Ýöne bu kepillik däl: sahypamyzyň ulanyjysy, meselem, bir ýerden çykgydy göçürip alanyňda, parametri ýitirip biler. Ýa-da sadatça salgys setirini redaktirläp, onuň üstünden ýanglyşlyk bilen öçürüp biler.
Jemi, islendik ýagdaýda kodymyz şeýle ýagdaýy göz öňünde tutmaly we oňa bir zat etmeli. Elimizde näme bar?
GET parametrimiziň bardygyny barlap, diňe ol bar bolsa çykarmak bolar:
<?php
if (isset($_GET['arg'])) {
echo $_GET['arg'];
} else {
// birnäçe jogap bereris, meselem, habar bilen
}
?>
Aýdyňlyk bilen edip bolar:
<?php
if (!isset($_GET['arg'])) {
$_GET['arg'] = 'default'; // adatdaky baha
}
echo $_GET['arg']; // kepillenen ýaly ýalňyşsyz bir zady çykarar
?>
Ýa-da şeýle edip bolar: parametrsiz sahypa girilende, şol bir sahypa parametr bilen gönükdirilşik bolsun:
<?php
if (!isset($_GET['arg'])) {
header('Location: ?arg=default');
}
echo $_GET['arg']; // parametr kepillenen bardyr
?>
Ikinji wariant üçinjiden näme bilen tapawutlanýandygyny düşündiriň.
Sahypa page.php üçin
num atly GET parametri arkaly san
ýollaryp biler diýeliň. Şol parametr
berilmedik girilende, awtomatik usulda şol sahypa,
ýöne num parametri 1 bahasy
bilen gönükdirilşik boljak etmegi amala aşyryň.