lostyazilim
tr.link

PHP – Form ile kullanıcı girişi

2 Mesajlar 1.259 Okunma
lstbozum
tr.link

krasmaos54 krasmaos54 Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 11.11.2015
  • Yaş/Cinsiyet 34 / E
  • Meslek lise ögrencisi
  • Konum Azerbeycan
  • Ad Soyad İ** A**
  • Mesajlar 33
  • Beğeniler 1 / 0
  • Ticaret 0, (%0)
Kaynak

Bu konudan ayrılmadan önce basit bir örneklede kullanıcı girişi olayını göstermek istiyorum. Veritabanı ve fazla detaya girmeden session ve form kullanarak bir kullanıcı girişi olayı yapalım.

Yukarıdaki giris.php örneğindeki formu kullanalım. O form bize kullanici ve sifre adında iki veri gönderilmesini sağlıyordu. Bunun yanında biz bir kontrol ve bir de panel sayfası yapacağız.

Kontrol sayfasında gönderilen kullanıcı adı ve şifrenin bizde kayıtlı kullanıcı adı ve şifre ile aynı olup olmadığına bakacağız, eğer bizdekiler ile aynı ise bu değerleri session ile kaydedeceğiz sonrasında panel.php‘ye gönderip giren kişinin giriş yapıp yapmadığını kontrol edip ona göre kullanıcıya özel olan sayfayı göstereceğiz.

kontrol.php:
if(isset($_POST[‘kullanici’]) && isset($_POST[‘sifre’])) { // form gönderilmiş mi
$kullanici = $_POST[‘kullanici’];
$sifre = $_POST[‘sifre’];

if(empty($kullanici) || empty($sifre)) { // gönderilenler boş mu
echo ‘Lütfen boş bırakmayın’;
} else {
if($kullanici == ‘musa’ && $sifre == ‘123456’) { // bilgiler doğru mu
session_start();
$_SESSION[‘kullanici’] = ‘musa’;
$_SESSION[‘sifre’] = ‘123456’;
echo ‘Giriş yaptınız! Şimdi panel.php ye girebilirsiniz.’;
} else {
echo ‘Yanlış kullanıcı adı ya da şifre’;
}
}
} else {
echo ‘Lütfen formu kullanın’;
}
?>

Burada bir önceki örnekteki form kontrol etme ifadelerinden sonra ekstra olarak bir gönderilenlerin tam olarak ne olduğunu da kontrol eden bir ifade ekledik. Eğer değerler boş değilse ve istediğimiz değerlere eşit ise session başlatıp kullanici ve sifre adında iki adet session oluşturduk. Bu oluşturduğumuz session değerlerinin içerisine yine şifremizi kaydettik. Bu bilgiler browser kapatılana kadar silinmeyeceği için bu süreç içinde kullanıcı oturum yapmış şekilde gözükecek ve panel.php’ye girdiğinde ona kullanıcı içeriğini gösterecektir.

panel.php:
session_start(); // session kullanımı başlattık
if(isset($_SESSION[‘kullanici’]) && isset($_SESSION[‘sifre’])) { // bu sefer sessionlar tanımlanmış mı diye bakıyoruz
if($_SESSION[‘kullanici’] == ‘musa’ && $_SESSION[‘sifre’] == ‘123456’) {
echo ‘Panele hoşgeldiniz! Bu yazıyı sadece giriş yapmış kişiler görebilir.’;
} else {
session_destroy(); // bilgileri yanlış olduğu için sessionlar silinir
echo ‘Bilgileriniz yanlış, buraya yanlızca giriş yapmış kişiler girebilir’;
}
} else {
echo ‘Sadece giriş yapmış kişiler görebilir’;
}
?>

Burada ise kontrol.php de gönderilen POST verilerini kontrol ettiğimiz gibi SESSION verilerini kontrol ettik. Sadece 1 kere giris.php üzerinden giriş yaptıktan sonra bir oturum boyunca panel.php sayfasında oturum açmış bir şekilde durabiliriz.

kaynak: http://ibrahimakcali.org/
 

 

wmaraci
reklam

ismail03 ismail03 WM Aracı Kullanıcı
  • Üyelik 28.11.2013
  • Yaş/Cinsiyet 30 / E
  • Meslek Ameliyathane Hemşiresi
  • Konum Afyon
  • Ad Soyad I** Ç**
  • Mesajlar 2633
  • Beğeniler 344 / 487
  • Ticaret 12, (%100)
değrli hocam küçük bir ekleme yapayım
if(!$_POST)
{
header("location: giris.php");
}
else
{
$kullanicial=strip_tags(trim($kullanici));
$sifreal=strip_tags(trim($sifre));
if(empty($kullanicial) || empty($sifreal) || $sifreal > 13 $kullanicial>15)
{ // gönderilenler boş mu
echo ‘Lütfen formu uygun şekilde doldurun’;
} else {

if($kullanicial== ‘musa’ && $sifreal== ‘123456’) { // bilgiler doğru mu
session_start();

$_SESSION[‘kullanici’] = ‘musa’;
$_SESSION[‘sifre’] = ‘123456’;
echo ‘Giriş yaptınız! Şimdi panel.php ye girebilirsiniz.’;
}
else {
echo ‘Yanlış kullanıcı adı ya da şifre’;
}
}
}
?>
 

 

wmaraci
wmaraci
Konuyu toplam 1 kişi okuyor. (0 kullanıcı ve 1 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al