Login Formu Oluşturalım -1-

Dreamweaver ve PHP kodlarını kullanarak login formu oluşturalım.

Dreamweaver ve PHP kodlarını kullanarak login formu oluşturalım.

Bir önceki derste tam olarak belirtmesekte login formunu oluşturmak için gerekli ögelerimizin hangilerinin olduğunu ve bu menülere nasıl ulaşabileceğimizi resimlerle anlatmıştık. Şimdi login formumuza başlayalım. Öncelikle kullanıcıadi ve sifre adında 2 tane ınput alanımız olması gerek. Kullanıcı adımızı ve sıfremızı gırdıkten sonra formumuzun çalıştırılması için ise bir adet sumbit , hatalı giriş yapıldığında temizleme yapabilmek için ise reset tuşuna ihtiyacımız olacaktır. Benim hazırladığım kodları kullanarak işlemi biraz hızlandırabilirsiniz ama bir önceki derste vermiş olduğum bilgiler doğrultusunda zaten siz bu formu oluşturacak bilgi düzeyine erişmiş oluyorsunuz. Buna birkaç ekleme yaparak yeni dersimize başlayalım ;


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-9" />

<title>Untitled Document</title>

</head>



<body>



if(empty($kullaniciadi) || empty($sifre))

{

?>

<form action="" method="post" name="form1" target="_self" id="form1">

  <table width="25%" border="0" align="center">

    <tr>

      <td width="41%">Kullanıcı Adı</td>

      <td width="59%"><label>

        <input type="text" name="kullaniciadi" id="kullaniciadi" />

      </label></td>

    </tr>

    <tr>

      <td>Sifre</td>

      <td><label>

        <input type="text" name="sifre" id="sifre" />

      </label></td>

    </tr>

    <tr>

      <td><div align="right">

        <input type="submit" name="giris" id="giris" value="- Gireyim -" />

      </div></td>

      <td><label>

        <input type="reset" name="reset" id="reset" value="- Ay Bilgilerim Hatalı -" />

      </label></td>

    </tr>

  </table>

</form>



}else{

        $sorgu=mysql_query("SELECT * FROM sanalkurs WHERE kullaniciadi='$kullaniciadi' AND sifre='$sifre'");

        if(mysql_num_rows($sorgu)<1){

            echo "<center>Kullanıcı bulunamadı</center><br>";

            //echo "$ps";

        }else{

            echo "<br><br><center><a href='basarili.php'>Yönlendirmezse tıklayın</a></center>";

            echo '<meta http-equiv="refresh" content="0;URL=page.php" />';

        }}

?>

</body>

</html>



Kodlarımız yukarıdaki gibidir. Bu kodları kullandığımız zaman formumuz ve form içerisinde php ile bilgilerinin iletilemesini sağlacak komutlara erişmiş olduk. Daha önce belirtmediğimiz ama formda kullandığımız bilgilere gelince ;

if döngümüz içerisinde yer alan empty komutumuz. Bu standart bir koruma olup session desteğiyle kuvvetlendirildiğinde her seferinde kullanıcıdan kullanıcı adını ve sifresini istemeden otomatik olarak login olmasını saglamak ve formun bilgileri (post ile göndereceğimiz kullanıcı adı ve sifre) olmadan sitemize erişmek isteyenler için özenle formu gösteren bir bilgi komutudur.


if(empty($kullaniciadi) || empty($sifre))



kullanımı empty($kullanici) seklinde olup birden fazla bilgiyi kontrol etmek istersek || ile ikinci bir empty hatta 3.-4. bir empty bile yazabiliriz. Ufak bir örnek vermek ve empty biraz daha kafanızda açık hale getirmek istersek , kullanici adı yada sifremiz boş bırakıldığı zaman formumuz her hangi bir işlem yapmayacaktır. Her iki bilgininde dolu olması gerekmektedir.

Bu derste bahsetmeyeceğimiz ama 2.ci dersimizde üstünde bolca duracağımız sql'e geldi sıra. Daha rahat anlayabilmeniz için ufak bir açıklama yapmak istiyorum. Sql veya Mysql terimleri bizim kullanacağımız formlar için veritabanı sistemlerini bize bildirmektedir. Örneğin bir kullanıcının olup olmadığını sahip olduğumuz veritabanı kayıtlarını kontrol ederek anlayabiliriz. Kontrol için ;


$sorgu=mysql_query("SELECT * FROM sanalkurs WHERE kullaniciadi='$kullaniciadi' AND sifre='$sifre'");



Biraz bu kodu irdeleyelim. SELECT * FROM sanalkurs yazısı ilk etapta gözümüze çarpacaktır. sanalkurs'un orada ne işi var diye sorarsanız bu kod sanalkurs veritabanı arasında kullaniciadi ve sifre kontrolu yapacaktır. Kontrol edeceğimiz bilgiler ile formumuzda kullandığımız input isimlerinin aynı olması gerekmektedir.


if(mysql_num_rows($sorgu)<1)



Peki bu satır ne yapıyor? Örnek teşkil etmesi açısından "cagdas" adında bir kullanıcımız bulunsun ve cagdas sisteme giriş yapmaya çalışssın. Form bilgilerinin tamamı dolduruldugunda ( kullanıcı adı ve sifre ) formumuz sonucunda php ye atılan bilgileri veritabanında kontrol edecektir. Sanalkurs veritabanında cagdas diye bir kayıt var ise if döngümüzün sonucu 1 olacaktır. Eğer cagdas adında bir kullanıcımız mevcut değil ise bu döngü sonucunda php 0 (bilgi yok, kayıt yok) sonucunu bize ulaştıracaktır.

Formumuz, form içinde kullandığımız ve php kodlarını açıkladığımıza göre 2.ci dersimiz olan veritabanı ve basarili.php geçebiliriz. Konu yayınlandıktan 2 gün içerisinde yeni dersi yazıp eklemeye çalışacağım arkadaşlar.
  • Etiketler;
M. Çağdaş Saygılı
Hakkında bilgi en kısa sürede eklenecektir.
Yorum Yaz

Yorum yazabilmek için üye girişi yapmanız gerekiyor!

ders cok güzel de simdi bu 'DE' ne oluyor dersiniz :) bu de veritabanı bağlantısı sağladıgımız icerisine bi users die bolum actıgımın hatta icerisine bilgi girdiğim halde bi türlü formu dogru calıstıramadıgımın gostergesidir. $sorgu=mysql_query("SELECT * FROM users WHERE kullanici_adi='$kullaniciadi' AND sifre='$sifre'"); yaptım ama her seferinde kullanıcı bulunamadı hatası veriyor :S anlamadım bi türlü
o kodlara ekleyecegimiz yazılar var daha.. include ile bagantılyı cağıracagız =) Derslerın devamını hazırlıyorum...
önceki dersleri kacıranlar ne yapacak.üzgünüm ama site ödevim var benim bunu biran önce lgin girişini öğrenmem gerek.ilgilernirseniz teşekkür ederim :agla:
önceki dersleri nasıl alabilirim
bu birinci dersimiz. sitemizde 2 ciside var. 3 ve 4 u daha hazırlama fırsatı bulamadım buldugum zaman ekleyecegım ..
SESSİON OLMADAN OTURUMU NASIL AÇTIK BENİM KAFAMA TAKILAN KONU DA ŞU SESSİON NASI BİŞİ ANLAYAMDM GİTTİ YAHU :D
ama sanırım sen burda şifreyi md5 lemiyorsun değilmi
eline sağlık ama sana bi öneride bulunmak istedim tabi seninkide bi çözüm ama en son satırda http equiv komutu yerine header de kullanılabilir ama buda olur tabi sonuçta aynı işi yapıyor
teşekkürler çok sağol
:d:D
$sorgu=mysql_query("SELECT * FROM sanalkurs WHERE kullaniciadi='.... arkdaşlar hata yok aslında çok küçük bi hata tablomusu sanalkursuye diye oluşturduk ama burda sorgu sanalkursa yapılıyo onu düzeltin yeter teşekkürler FROM sanalkurs WHERE => FROM sanalkursuye WHERE
3. dersi de bekliyoruz. Ellerinize sağlık..
emeğine sağlık

Yukarı Git