Php üyelik sistemi
<?php $sorgu=mysql_connect("localhost", "root", "123456") or die(mysql_error()); mysql_select_db("mert_uyelik", $sorgu) or die(mysql_error()); ?>
baglan.php dosyamız tamam şimdi uyeol.php adlı bir dosya oluşturalım ve kodlarımızı yazmaya başlıyalım.
<?php // Mert Can Arabacı // Kayit olma formu başlayış function form() { echo '<form action="uyeol.php?kontrol=kontrol" method="post"> <input type="text" name="kullanici_adi" value="kullanici adiniz..."><br> <input type="password" name="sifre" value="sifreniz"><br> <input type="text" name="email" value="emailiniz"><br> <input type="submit" value="Kayit Ol"><br> </form>'; } // bitiş // Kontrol Başlayış function kontrol() { include ("baglan.php"); $gelen_kullanici_adi=$_POST['kullanici_adi']; $gelen_sifre=$_POST['sifre']; $gelen_email=$_POST['email']; if ($gelen_kullanici_adi=="" or $gelen_sifre=="" or $gelen_email=="") { echo "Tum Alanlari Doldurun..."; } else { $sorgu=mysql_query("INSERT INTO uyeler (kullanici_adi, sifre, email) values ('$gelen_kullanici_adi', '$gelen_sifre', '$gelen_email')"); if ($sorgu) { echo "Kayit Oldunuz Lütfen Giris Yapin...(yönlendiriliyorsunuz)" . header ("refresh: 2; url=index.php"); } else { echo "Tekrar Deneyin...Sorgu Basarisiz"; } } } //Bitiş // programın akışına belirliyen switch deyimi başlayış $kontrol=$_GET['kontrol']; switch ($kontrol) { default: form(); break; case ("kontrol"); kontrol(); break; } // Bitiş ?>
Burada iki tane fonksiyonumuz var. Form fonksiyonu kayıt olma formunu içeriyor. Kontrol ise formu veri tabanına aktarıp sonucu bize gösteriyor.
Fonksiyondan başka bir de switch deyimi var. Adı anahtar anlamına gelen switch deyimi, verilen bir değişkenin değerinin sıraladığımız koşullardan hangisine uygun olduğunu sınar ve o koşula ilişkin komutları icra eder. İlerliyen derslerde switch deyimini daha geniş anlatacağım.
Şimdi sıra geldi index.php‘yi yazmaya:
<?php //Mert Can Arabacı //giriş formu başlayış function form() { session_start(); $durum=$_SESSION['girildi']; $kullanici=$_SESSION['kullanici']; if ($durum=="") { echo '<form action="index.php?kontrol=kontrol" method="post"> <input type="text" name="kullanici_adi" value="kullanici adiniz..."><br> <input type="password" name="sifre" value="sifreniz"><br> <input type="submit" value="Giris"><br> </form>'; } else { echo "hos geldiniz sayin --> ". $kullanici ."<br><a href='index.php?kontrol=cikis'>Cikis Yap</a>"; } } // bitiş // Giriş Kontrol başlıyış function kontrol() { include ("baglan.php"); session_start(); $kullanici_adi=$_POST['kullanici_adi']; $sifre=$_POST['sifre']; if ($kullanici_adi=="" or $sifre=="") { echo "Tum Alanlari Doldurun..."; } else { $sorgu=mysql_fetch_array(mysql_query("SELECT * FROM uyeler WHERE kullanici_adi='$kullanici_adi'")); if ($kullanici_adi==$sorgu['kullanici_adi'] and $sifre==$sorgu['sifre']) { $_SESSION['girildi']="durum"; $_SESSION['kullanici']=$kullanici_adi; header ("location: index.php"); } else { echo "Tekrar Deneyin..."; } } } // Bitiş // Çikış BAşlayış function cikis(){ session_start(); ob_start(); session_destroy(); header ("location: index.php"); ob_end_flush(); } //Bitiş // Switch Başlayış $kontrol=$_GET['kontrol']; switch ($kontrol) { default: form(); break; case ("kontrol"); kontrol(); break; case ("cikis"); cikis(); break; } // Bitiş ?>
$durum adlı değişken boş dönerse giriş formu ekrana çıkıyor. Ama daha önceden giriş yapılmış ve “çıkış yap” denmemişse $durum dolu olarak dönüyor ve direk ekranda “Hoş Geldiniz” yazısı çıkıyor.
NOT: Kendi Mysql ayarlarınızı yapmayı unutmayın !