background img
Nis 21, 2017
1916 Views
0 0

PHP de Kullanıcı Girişi Yapmak

Yazar :

Önce ayar.php adında bir dosya oluşturarak veritabanına bağlanmak için gerekli kodları yazalım:

ayar.php

1
2
3
4
5
6
7
8
9
10
<?php
$host="localhost";
$db="mydb";
$user="murat";
$pass="123456";
$conn=@mysql_connect($host,$user,$pass) or die("Mysql Baglanamadi");
mysql_select_db($db,$conn) or die("Veritabanina Baglanilamadi");
mysql_set_charset('latin5',$conn);
?>

Bu uygulama için mydb adında bir veritabanı oluşturularak bu veritabanına erişme yetkisine sahip kullanıcı adı murat olan, şifresi de 123456 olan bir kullanıcı tanımlanmıştır. mydb veritabanında da uyeler adında bir tablo oluşturularak içerisinde sırasıyla id, username ve password sütunları oluşturulmuştur.

Şimdi kullanıcıdan kullanıcı adı ve şifresini girmesi için bir form yapalım. Bunun için index.php dosyasını oluşturuyoruz.

index.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<form action="login.php" method="POST">
<table align="center">
<tr>
<td>Kullanici Adi</td>
<td>:</td>
<td><input type="text" name="kadi"></td>
</tr>
<tr>
<td>Sifre</td>
<td>:</td>
<td><input type="password" name="sifre"></td>
</tr>
<tr>
<td></td>
<td></td>
<td><input type="submit" value="Giris"></td>
</tr>
</table>
</form>

Burada 1 adet kullanıcı adı kutusu,1 adet şifre kutusu ve giriş butonu oluşturduk. Şimdi giriş butonuna tıklandığında girilen kullanıcı adı ve şifrenin doğru olup olmadığını test eden login.php adında bir dosya oluşturuyoruz.

login.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?php
include("ayar.php");
ob_start();
session_start();
$kadi = $_POST['kadi'];
$sifre = $_POST['sifre'];
$sql_check = mysql_query("select * from uyeler where username='".$kadi."' and password='".$sifre."' ") or die(mysql_error());
if(mysql_num_rows($sql_check))  {
    $_SESSION["login"] = "true";
    $_SESSION["user"] = $kadi;
    $_SESSION["pass"] = $sifre;
    header("Location:admin.php");
}
else {
    if($kadi=="" or $sifre=="") {
        echo "<center>Lutfen kullanici adi ya da sifreyi bos birakmayiniz..! <a href=javascript:history.back(-1)>Geri Don</a></center>";
    }
    else {
        echo "<center>Kullanici Adi/Sifre Yanlis.<br><a href=javascript:history.back(-1)>Geri Don</a></center>";
    }
}
ob_end_flush();
?>

Eğer girilen kullanıcı adı ve şifre doğru ise admin.php sayfasına yönlendiriyoruz, yanlış ise kullanıcı adı/şifre yanlış şeklinde ekranda hata mesajı yazdırıyoruz. Şimdi gelelim admin sayfamıza. Bunun için admin.php adında dosya oluşturuyoruz.

admin.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
include("ayar.php");
ob_start();
session_start();
if(!isset($_SESSION["login"])){
    header("Location:index.php");
}
else {
    echo "<center>Admin sayfasina hosgeldiniz..! ";
    echo "<a href=logout.php>Guvenli cikis</a></center>";
}
?>

Eğer kullanıcı siteye giriş yapmadan adres çubuğuna direkt admin.php yazarsa bu sayfaya erişemeyecek ve index.php giriş sayfasına yönlendirilecektir. Son olarak siteden çıkış yaparken yazmamız gereken koda. Bunun için de logout.php adında bir sayfa oluşturuyoruz.

logout.php

1
2
3
4
5
6
7
8
<?php
session_start();
ob_start();
session_destroy();
echo "<center>Cikis Yaptiniz. Ana Sayfaya Yonlendiriliyorsunuz.</center>";
header("Refresh: 2; url=index.php");
ob_end_flush();
?>

Çıkış linkine tıkladığımız zaman oturum bilgileri sonlandırılır ve 2 sn sonra anasayfaya yönlendirilme işlemi yapılır.


Uygulamayı ve kaynak kodlarını indirmek için tıklayınız..!

Yorumlar PHP de Kullanıcı Girişi Yapmak

  • Hocam merhaba bu üye giriş formunu bir türlü çalıştıramadım satırın birini boş bırakınca “gerekli alanları doldurmanız gerekiyor” uyarısı yapıyor ama ne yazarsam yazayım çalışmıyor bir de yazdırınca giriş sayfası kaybolmuyor onun üzerine yazdırıyor, bunun mail onaylı kayıt sayfasını yaptığım için
    giriş sayfsını da yapmam gerekiyor yardımcı olurmusunuz? selamalar.

    Veri tabanı: deneme
    tablo: uye_ler
    TABLO BAŞLIKLARI
    uye_id/uye_adi/uye_sifre/uye_eposta/uye_ceptel/uye_kod/uye_tarih/uye_onay

    Üye ol

    bireysel üyelik

    Kurumsal Üyelik için tıklayınız

    adınız soyadınız

    şifre

    Giriş yap

    <?php

    if($_POST){

    $isim = trim($_POST["isim"]);
    $sifre = trim($_POST["sifre"]);

    if(!$isim || !$sifre ){

    echo 'gerekli alanları doldurmanız gerekiyor…’;

    }else {

    error_reporting(0);
    $baglan = mysql_connect(“localhost”,”root”);
    mysql_select_db(“deneme”,$baglan) or die(“mysql’e bağlanamadı”);

    $kontrol = mysql_query(“SELECT COUNT(*) FROM uye_ler where uye_adi=’$uye_adi'”);

    if(mysql_num_rows($kontrol) > 0){
    $par = mysql_fetch_array($kontrol);

    }else{
    echo “Böyle bir kullanıcı bulunamadı.”;
    }

    }

    }

    ?>

    Mehmet Emin Sarıbaş 20 Aralık 2017 11:20 Yanıtla

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

The maximum upload file size: 50 MB. You can upload: image, audio, video, document, text, other. Links to YouTube, Facebook, Twitter and other services inserted in the comment text will be automatically embedded. Drop file here