Eyl
9
2012

PHP Admin Paneli

PHP ile admin paneli yapmak için yapmanız gerekenler: Eğer kullanıcı adı ve şifreniz veritabanından değil de dosyadan kontrol edilecekse öncelikle kullanıcı adı ve şifre bilgisini tutan ayar.php adında bir dosya oluşturalım.

ayar.php

<?php
$user = "admin";
$pass = "123456";
?>

Ş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

<form action="login.php" method="POST">
<table align="center">
<tr>
<td>Kullanici Adi</td>
<td>:</td>
<td><input type="text" name="username"></td>
</tr>
<tr>
<td>Sifre</td>
<td>:</td>
<td><input type="password" name="password"></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 edelim. Bunun için login.php adında bir dosya oluşturuyoruz.

login.php

<?php
include("ayar.php");
session_start();
ob_start();
if(($_POST["username"]==$user) and ($_POST["password"]==$pass)){
$_SESSION["login"] = "true";
$_SESSION["user"] = $user;
$_SESSION["pass"] = $pass;
header("Location:admin.php");
}else{
echo "Kullancı Adı veya Şifre Yanlış.<br>";
echo "Giriş sayfasına yönlendiriliyorsunuz.";
header("Refresh: 2; url=index.php");
}
ob_end_flush();
?>

Eğer girilen kullanıcı adı ve şifre doğru ise admin sayfasına yönlendiriyoruz, yanlış ise giriş sayfasına yönlendirme işlemi yapılıyor.
Şimdi gelelim admin sayfamıza. Bunun için admin.php adında dosya oluşturuyoruz.

admin.php

<?php
include("ayar.php");
session_start();
if(!isset($_SESSION["login"])){
echo "Bu sayfayı görüntüleme yetkiniz yoktur.";
}else{
echo "Admin sayfasina hosgeldiniz..<br>";
echo "<a href=logout.php>Çıkış Yap</a>";
}
?>

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

logout.php

<?php
session_start();
ob_start();
session_destroy();
echo "Çıkış Yaptınız. Ana Sayfaya Yönlendiriliyorsunuz";
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.
 

Benzer Yazılar

Yazar Hakkında:

Öğr. Gör. Murat YAZICI, Artvin Çoruh Üniversitesi, Artvin Meslek Yüksekokulu, Bilgisayar Teknolojileri Bölümü

17 Yorum + Yorum Yaz

  • Hocam paylaşım için teşekkürler. Gayet açık anlatım olmuş. Bir hususta geliştirmede bulundum paylaşmak isterim

    admin.php sayfasında

    echo “Bu sayfayı görüntüleme yetkiniz yoktur.”; ‘ dan sonra
    header(“Refresh: 2; url=index.php”) olursa giriş yapmaya zorlaycaktır. saygılar. :)

    • Bildirimin için teşekkür ederim:) Lakin, kullanıcının browserda direkt admin.php sayfasını yazmayacağını umut ettiğimizden o satırı eklemedik, ama eklesek daha doğru olacak gibi :)

  • Hocam php yi tam bilmiyorum ama ;
    burayı bi textbox ile nasıl düzenleyebilirim yani admin panelinden id ve şifreyi textbox ile nasıl değiştirip kaydedebilirim?

    • textbox php’de olmaz, C# .NET’ te nasıl yapılır, onu mu soruyorsun?

  • hocam dediğiniz gibi uyguladığımda ;
    Warning: session_start() [function.session-start]: Cannot send session cookie – headers already sent by (output started at C:\AppServ\www\Nikajans\admin\admin_giris.php:9) in C:\AppServ\www\Nikajans\admin\admin_giris.php on line 12

    Warning: session_start() [function.session-start]: Cannot send session cache limiter – headers already sent (output started at C:\AppServ\www\Nikajans\admin\admin_giris.php:9) in C:\AppServ\www\Nikajans\admin\admin_giris.php on line 12
    Giriş Başarısız

    hatası alıyorum nedeni nedir

    • ob_start(); fonksiyonunu php etiketini açtıktan hemen sonra yaz. Yani, 2. satıra..

  • header(“Location:admin.php”); /// bu kod çalışmıyor
    hata veriyo

    • Nasıl bir hata veriyor, hata mesajını yazar mısınız?

  • teşekkürler hocam çok faydalı oldu.

  • Merhaba iyi günler.
    Tam olarak php bilmiyorum siteme bir giriş paneli yaptım. Giriş yapıldıktan sonra linke ulaşılabiliniyor ama link bulunursa eğer giriş yapmadanda ulaşılabiliniyor. Örnek olarak mesela”http://www.muratyazici.com/php-admin-paneli.htm” bu linki yazdığım zaman giriş yapınız demesini istiyorum. Şifresiz giriş olmasın istiyorum. Onu nereden nasıl ayarlayabilirim ? Şimdiden teşekkürler…

    • admin.php sayfasındaki 4 ve 5. satırlar tam bu işe yarıyor. Eğer kullanıcı adı ve şifre doğru girilmeden adres satırına direkt url yazılırsa “Bu sayfayı görüntüleme yetkiniz yoktur.” yazdırılmaktadır. Siz isterseniz bu kısmı değiştirip header(“Refresh: 2; url=index.php”) satırlarını da ekleyip 2 sn. sonra ana sayfaya yönlendirilmesini sağlayabilirsiniz.

  • http://s1307.hizliresim.com/1c/x/qxmdt.jpg

    Admin bende böyle bir hata veriyor neden wampserver da çalıştırıyorum localhost yani.

    • Kodu tekrar çalıştırdım XAMPP’ de, herhangi bir hatayla karşılaşmadım. Kodda herhangi bir değişiklik yapmadınız değil mi?

  • login.php dosyası normal şekilde çalışırken sorun yok yani post ederken fakat direk çalışırken post olmadığı zaman hata veriyor o şekilde tekrardan kodladım hata yok şu an

  • anlatım için teşekkürler.
    ayar.php dosyasının kötü amaçlılar tarafından direk adres çubuğuna yazılıp kullanıcı adı ve şifrenin öğrenilememesi için ne yapmalıyız? CMOD izinleri vs kullanılabilir mi?

    • ekstra birşey yapmanıza gerek yok, php kodları zaten web sayfasında görüntülenmez.
      Yani mesela, http://localhost/ayar.php yazsanız da adres çubuğuna k.adı ve şifre bilgisini öğrenemezsiniz.