Php ile Üyelik Girişi

 bcakir
 29 Aralık 2011
 Php

Merhaba arkadaşlar, bir önceki yazımda Php betiklerinizde dikkat etmeniz gereken problemlerin çözümlerinden bahsetmiştim. Bu yazımda ise önceki makalede anlattığım güvenlik önlemlerinin de kullanıldığı üyelikli giriş uygulaması yapacağız. Bu yazı ile üye giriş sistemlerinin temel mantığını öğrenmiş olacaksınız. Ayrıca, kolaylıkla daha önceden yaptığınız ya da yapacağınız uygulamalara bu makaleyi temel alarak çok kolay giriş ve çıkış işlemini ekleyebilirsiniz. Uygulamamızda veritabanı kullanmayacağım ama eklemek için yapılması gerekenlerden bahsedeceğim için siz çok küçük değişikliklerle bunu yapabilirsiniz. Şimdi index.php sayfası ile geliştirmeye başlayabiliriz.

<?php
//kullanıcı adı ve parola girin
$kullanici = "bcakir";
$sifre = sha1(md5("bcakir"));

//fonksiyonları içeri aktarma
include "fonksiyonlar.php";

//sayfa parametresini alma
if (isset($_GET['sayfa'])){
    if (($_POST) && ($_GET['sayfa'] == 'giris')){
        //üye olup olmaddığı kontrolü
		kontrol($kullanici, $sifre);
    }elseif ($_GET['sayfa'] == 'cikis'){
		//çıkış yapma
        cikis();
    }
}

//form elemanlarını oturum açılmamışsa göster
if(!isset($_SESSION['oturum'])){
?>

<!DOCTYPE html>
<html>
<head>
<title>Php ile Üye Girişi</title>
</head>
<body>
<form action="index.php?sayfa=giris" method="Post">
Kullanıcı: <input type="text" name="user" value="" />
Şifre: <input type="password" name="pass" value="" />
<input type="submit" name="gonder" value="Gönder" />
</form>

<?php } ?>
</body>
</html>

Yukarıda form elemanlarından kişinin bilgilerini alma ve yapacakları işleme göre (giriş ya da çıkış) fonksiyonlara göndermeyi yaptık. Ayrıca, eğer oturum açılmışsa form elemanlarını da gizledik. Uygulamamıza fonksiyonlar.php betiğini yaparak devam edelim.

<?php
ob_start();

// Giriş Kontrol
function kontrol($kullanici, $sifre){
	//oturumu başlatma fonksiyonu
	session_start();
	//güvenlik giriş oturumunu iptal etme
    $_SESSION['oturum'] = false;
    //formdan alınan verilerin temizlenmesi
	$user = addslashes(strip_tags(trim($_POST['user'])));
    $pass = addslashes(strip_tags(trim($_POST['pass'])));
    $pass = sha1(md5($pass));

	//girilen bilgilerin kontrol edilme işlemi
    if(empty($user) && empty($pass)){
        echo 'Tüm alanları doldurun.';
    }elseif($kullanici == $user && $sifre == $pass){
		//giriş için oturum açma
        $_SESSION['oturum'] = true;
        $_SESSION['user'] = $user;
        echo "Sitemize giriş yaptın. Hoşgeldin, ".$user;
        echo " <a href='index.php?sayfa=cikis'>Çıkış Yap</a>";
    }else{
        echo "Kullanıcı adı ile şifre eşleşmedi.";
        header("Refresh: 2; url={$_SERVER["HTTP_REFERER"]}");
    }
}

// Çıkış
function cikis(){
	//oturumu iptal etme
    session_start();
    $_SESSION = array();
    session_destroy();
    echo "Çıkış yaptınız, yönlendiriliyorsunuz.";
    header("Refresh: 2; url={$_SERVER["HTTP_REFERER"]}");
}

ob_end_flush();
?>

Yukarıda ise giriş ve çıkış fonksiyonlarımızı yaparak uygulamamızı tamamladık. Eğer bu betiğe veritabanını eklemek istiyorsanız; giriş kontrol fonksiyonunda, girilen bilgilerin kontrol edilme işleminden önce vertabanında kişinin olup olmadığı kontrolü eklemeniz yeterlidir. Böylece, önceki yazımızla giriş yaptığımız güvenlik konusunu da içeren üyelikli giriş betiği uygulamasını tamamlamış olduk. Yararlı olması dileğiyle.

 1.637 Okunma

Bu yazıya 2 yorum yapılmış.

  1. hocam bunan ilgili denediğimiz giriş dediğimizde
    direk giriş yapıyor hata v.s. vermiyor

    kullanıcı adı şifresi ne olursa olsun direk giriş yapıyor

  2. Güzel bir anlatım olmuş teşekkürler.

Yazı hakkında görüşlerinizi belirtmek istermisiniz?

Daha fazla Php
Kapat