Başkalarının ulaşmasını istemediğiniz sayfalarınız olabilir.Bunları sadece şifreyi bilenlerin girmesine izin vereceginiz yerlerde olabilir.Bu işlem aslında birçok yerde işinize yarabilir bunun en güzel örneklerinden biriside admin sayfasıdır.Şimdilik burada küçük çaplı bir özel sayfa erişimi koyacağım fakat ileride daha geniş kapsamlı bir admin sayfasına erişimi nasıl engelleyebiliriz onu anlatacağım şimdi kodlara geçelim.
Kullanılan komutlar:
PHP_AUTH_USER : Üye Giriş Bölümü Kullanıcı Adı Komutu
PHP_AUTH_PW : Üye giriş Bölümü Kullanıcı Şifresi Komutu
Authenticate(): İşlemleri Onaylama İşlemi Görür
<?
//-----------------------------------------
// Http doğrulaması için login penceresi açar.
function AuthMsg() {
GLOBAL $user, $pw;
header('WWW-Authenticate: Basic realm="Dahiweb"');
header('HTTP/1.0 401 Unauthorized');
?>
//kullanıcı adı ve şifresini gireceğimiz alan
<HTML>
<HEAD>
<TITLE>Doğrulama Örneği</TITLE>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html;CHARSET=iso-8859-9">
</HEAD>
<BODY>
<B>Sadece yetkili kullanıcının girişine izin verilmiştir.</B><BR>
Kullanıcı adı olarak '<?PHP echo $user; ?>' ve şifre olarak '<?PHP echo $pw; ?>' girin. // isteğe bağlı alan
</BODY>
</HTML>
<?
exit;
}
//---------------------------------------------
// Kullanici yetkili degil ise http authentication login penceresi açar.
function Authenticate() {
GLOBAL $PHP_AUTH_USER, $PHP_AUTH_PW, $user, $pw;
$auth=False;
if(!empty($PHP_AUTH_USER) && !empty($PHP_AUTH_PW)) {
if($PHP_AUTH_USER==$user && $PHP_AUTH_PW==$pw)
$auth=True;
}
if(!$auth) {
AuthMsg();
exit;
}
}
//-----------------------------------------------
$user="myuser"; // Kullanıcı Adınız.
$pw ="mypw"; // Kullanıcı Şifreniz
if(!isset($act)) $act="";
if($act=="logout") {
AuthMsg();
exit;
}
Authenticate();
echo "Hoşgeldiniz...<BR>";
echo "Şu anda <B>$PHP_AUTH_USER</B> kullanıcısı olarak bağlısınız.<BR>";
echo "Şifreniz <B>$PHP_AUTH_PW</B><BR>";
echo '<A href="'.$PHP_SELF.'?act=logout">Logout</A>'; // çıkış yapmak istiyorsanız çerezleri siler.
?>
Gösterimi:
Şifre Ekranı:
Şifre Dogru ise:
Şifre Yanlış ise:
ekranları karşımıza çıkacaktır. Son resimde yanlış girmemize rağmen aşağıda kullanıcı adı ve şifre gözükmekte onları göstermek amaçlı oldugu için yaptım.Kaldırmak isterseniz kodlarda istege göre bölüm yazdığım yeri silmeniz yeterli olacaktır.
Açıklamalarını // ile anlatmaya çalıştım umarım işinizi görmüştür.Kolay Gelsin..
|