Görünmeyen Kod Kılavuz İster

Full width home advertisement

Post Page Advertisement [Top]

Php ile Form Üzerinden Login İşlemi

 

 Herkese merhabalar, bu yazımda sizlere Php ile MySQL tablolarını parse ederek nasıl bir login sistemi yapabileceğinizi anlatacağım. 

Bizim için gerekli olan programlar şu şekilde:

  • Php
  • MySQL
  • PhpMyAdmin
  • JQuery

 

İlk olarak bir dosya oluşturalım ve içerisine;

  • index.php
  • loginprocess.php
  • loginreject.php
  • style.css

dosyalarını oluşturalım. Burada index.php giriş panelimizin olduğu kısım, loginprocess.php veritabanı bağlantısı oluşturacağımız kısım, loginreject.php ise eğer yanlış kullanıcı adı ve parola girersek neler olacağını belirlediğimiz kısımdır.

Şimdi isterseniz hangi kısımda ne yapacağımızı görelim.

MySQL

ilk önce http://localhost/phpmyadmin adresine gidelim. Üst menüden SQL menüsüne tıklayalım ve bir SQL sorgusu yazalım.

CREATE DATABASE login

Burada login yazan kısıma oluşturacağınız veritabanının adını yazıyorsunuz. Ardından sağ alt köşedeki git butonuna tıklıyorsunuz.

Görebileceğiniz üzere veritabanı listelerinin arasına login adında bir veritabanı eklendi. Onun üzerine tıklayıp tekrardan SQL yazan yere geliyoruz. Şimdi oluşturacağımız sorgu ise bir tablo oluşturmak ve bu tablolara değer yazmak.

CREATE TABLE account(
usern VARCHAR(20) NOT NULL,
userp VARCHAR(20) NOT NULL
)

INSERT INTO account (usern,userp) VALUES ("admin","123456789")

Yazıp tekrardan git butonuna tıklıyoruz ve veritabanı işlemlerimiz son buluyor. Artık bizim kullanıcı adımız admin, şifremiz ise 123456789.

index.php

 

Burada dediğim gibi panel arayüzünü tasarlayacağız, buraya kodları tek tek yazarsam çok uzun olur. Aşağıya bırakacağım Github adresinden zaten kodlara ulaşabilirsiniz. 

loginprocess.php

 

Burası Php ile veritabanımızı bağlamamız için en önemli kısım. Şimdi burada bir PDO nesnesi oluşturacağız ve SQL sorguları yazacağız. 
 
İlk önce bir SESSION oluşturalım:
 
$_SESSION['login'] = "no";


$db = new PDO("mysql:host=localhost;dbname=login","mysqlkullanıcıadınız","mysqlkullanıcısifreniz");

Burada yaptığımız işlem, bir PDO nesnesi oluşturmak ve veritabanı bağlantısı için gerekli olan bilgileri yazmak. Burada ki dbname kısmına dikkat ediniz. Bu kısıma bağlanmak istediğimiz veritabanının adını yazıyoruz.

Şimdi ise bu bilgileri parse etmemiz gerekiyor. 

$username = $_POST['username'];
$password = $_POST['password'];
$sql = $db->prepare("SELECT * FROM account WHERE usern = ? AND userp = ?");
$sql->execute([$username,$password]);
$datas = $sql->fetch(PDO::FETCH_ASSOC);

Şimdi burada ilk önce index.php sayfasından form aracılığı ile gönderdiğimiz verileri değişkenlere atadık. Ardından ise veri çekebilmek için bir SQL sorgusu yazdık, bunu prepare() ve execute() fonksiyonları ile php üzerinden kullanabileceğimiz hale getirdik. En sonunda ise giden verilerin kıyaslanmış halini boolean değer alan $datas değişkenine atadık. Şimdi kıyaslama doğru ise veya değil ise ne yapacağımızı göreceğiz.
if($datas) {
$_SESSION['login'] = "ok";
}
else{
$_SESSION['login'] = "no";
}

Burada ise eğer veriler uyuşuyor ise login SESSION'umuzun değerini 'ok' yaptık eğer değil ise 'no' değerini aldı. Şimdi Eğer doğru ise nelerin gösterileceğini veya ne mesaj vereceğimiz kısıma geldik. Bunun için ise:
if($_SESSION['login'] == "ok"){
//giriş başarılı ise ne yapılacağını yaz
}
else{
//giriş başarılı değil ise ne yapılacağını yaz.
require("loginreject.php");
}


Diğer dosyalar

Daha önce de dediğim gibi bunlar tasarım dosyaları ve yazmam çok uzun sürer. Bunların hepsine Github linkinden ulaşabilirsiniz. 

Hiç yorum yok:

Yorum Gönder

Bottom Ad [Post Page]