1. Anasayfa
  2. Php
Trendlerdeki Yazı

Php ile basit üyelik sistemi yapımı


56

Merhaba Arkadaşlar,Yine bir derse hoşgeldiniz…

BU Dersimizde PHP ile Nasıl Bir üyelik sistemi yapılır onu göstermeye çalışacam…Şimdi Gözünüz korkmasın,Joomla,vbullet gibi geniş sistemlerdeki gibi değil…Sadece üyelik scripti yapacaz,ve siz bunu yapmış olduğunuz sistemlere entegre edebileceksiniz..

Uygulamanın çalışan halini konu sonundan indirebilirsiniz…
Şimdi Bize Neler Gerekli? Mantık şu:
1-) Üyelerin Kayıtlarının Tutulduğu bir Database…
Tabikide Biz MySQL Kullanacaz…
2-) Buradaki Gibi bir Database Bağlantı Dosyamız..
3-) Üyeler’in kaydolması için Kayıt Formu
4-) Üyelerin Hesaplarına giriş yapabilmesi için giriş formu
5-) Tabikide Bir index…

Başlayalım…

İlk Önce Bize Gerekli Olan SQL’umuzu oluşturalım…

Kod:

CREATE TABLE uye (
id smallint(6) NOT NULL auto_increment,
ad varchar(20) NOT NULL default '',
kullaniciadi varchar(20) NOT NULL default '',
sifre varchar(20) NOT NULL default '',
email varchar(20) NOT NULL default '',
hakkimda text NOT NULL,
PRIMARY KEY  (id)
) TYPE=MyISAM;

INSERT INTO uye VALUES (1, ‘Çağrı’, ‘Çağrı’, ‘12345’, ‘sanane@banane.com’, ‘Scriptimizin 1.Üyesi’);

Yukarda Gördüklerinizi Biraz Açıklayayım…

“CREATE TABLE” ile tablolarımızı phpmyadminde oluşturduk…

id=üye numarası,ad=üye adı,kullanici adi=üyenin kullanıcı adı vsvsvs bilgileri database’imizde tutmamıza yarayacak tablolar..

Database’imizi oluşturduk,tabi siz istediğiniz kadar özellik ekleyebilirsiniz…ama üyelik formunda (bkz.üyelik formu,aşağıda) değişiklik yapmanız gerek…

Şimdi,bu SQL’u PHP dosyalarımıza bağlamamız gerek,ki birazdan kullanacağımız sorgular çalışsın… bunun içinde bir db_ayar.php dosyası yapalım… ve içine buradaki anlattığım sistem gibi SQL’a bağlanalım…

db_ayar.php dosyamızı bir metin editörü ile açın… ve Şu kodları yerleştirin…

Kod:

<?php
$host = "localhost";
$mysqladi = "root";
$mysqlsifre ="123456";
$db = "uyee";
@mysql_connect ("$host", "$mysqladi", "$mysqlsifre") or die ("MySql Baglantisinda Hata");
@mysql_select_db ("$db") or die ("Üye Veritabanina Baglanilamadi");
?>

Eveet..bu dosyamızı diğer PHP dosyalarımıza include ederek SQL ile bağlantıyı kurmuş olacağız..

Şimdi,Bir Üyelik Formu oluşturalım…Az Önce Yayınladığım dersteki bilgileri kullanarak daha detaylı bir üyelik formu oluşturabilirsiniz…

Ama ben database’deki bilgilere göre bir form oluşturacağım…
Kod:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1254">
<title>Yeni Üye Kaydı</title>
</head>
<body>
&lt;center
<table border="1" cellspacing="1" style="border:1.5pt solid
#0000FF;" width="28%" id="AutoNumber1" height="2"
fpstyle="6,011111100">
<tr>
<td width="100%" colspan="2" height="18"
style="border-bottom:1.5pt solid black; font-weight: bold; color:
white; background-color: #000000; border-left-style:none;
border-right-style:none; border-top-style:none">
<p align="center"><b><font color="#0000FF" face="Verdana">Üye Kaydı</font></b></td>
</tr>
<tr>
<td width="25%" height="22" style="font-weight: bold; color:
black; border-style: none; background-color: silver">Adı</td>
<td width="75%" height="22" style="color: navy; border-style:none; background-color: silver">
<form action="kayit_tamamla.php" method="post">
<input type="text" name="ad" id="ad" size="20"></td>
</tr>
<tr>
<td width="25%" height="22" style="font-weight: bold; color: black; border-style: none; background-color: silver">
Üye Adı</td>
<td width="75%" height="22" style="color: navy; border-style: none; background-color: silver"> <input type="text" name="kullaniciadi" id="kullaniciadi"
size="20"></td>
</tr>
<tr>
<td width="50%" height="1" style="font-weight: bold; color: black; border-style: none; background-color: silver">
<p align="left">Şifre</td>
<td width="50%" height="1" style="font-weight: bold; color: black; border-style: none; background-color: silver">
<input type="password" name="sifre" id="sifre" size="20"></td>
</tr>
<tr>
<td width="50%" height="0" style="font-weight: bold; color: black; border-style: none; background-color: silver">
E-Posta</td>
<td width="50%" height="0" style="font-weight: bold; color: black; border-style: none; background-color: silver">
<input type="text" name="posta" id="posta" size="20"></td>
</tr>
<tr>
<td width="50%" height="0" style="font-weight: bold; color: black; border-style: none; background-color: silver">
Hakkımda</td>
<td width="50%" height="0" style="font-weight: bold; color: black; border-style: none; background-color: silver">
<textarea rows="7" name="hakkimda" cols="20"></textarea></td>
</tr>
<tr>
<td width="100%" colspan="2" height="0" style="font-weight:
bold; color: black; border-style: none; background-color: silver">
<p align="center"><input type="submit" value="Gönder" name="B1"></form></td>
</tr>
</table>
</center>
</body>
</html>

Eveet..Burda Ne Yapmış Olduk? Üye Kayıt Formunu Oluşturduk…Yukardaki kodlarda kaydolmak isteyen üyeye;

Adını,Şifresini,Epostasını ve Basit bir Hakkında textbox’larıyla doldurmasını istedik….

Tabi bunu sadece html kodlarıyla yaptık…şimdi bu kodları alın ve kayit.php diye bir dosya oluşturup içine yapıştırın…Kaydolmak isteyen kişileri bu sayfaya yönlendireceksiniz…örn: www.siteadi.com/kayit.php
gibi..

Durun!…Daha kaydolma işlemi bitmedi…

Formu oluşturduk…Ama SQL’a kaydettikmi? hayır…

e ozaman Cânım PHP’yi kullanarak bu Formdaki bilgileri database’imize kaydedelim…

Şimdi kayit_tamamla.php adlı bir dosya oluşturalım..Dikkat ettiyseniz formdada kayit_tamamla.php dosyamızı kullandık?Neden peki? işte asıl çözlüecek nokta bu…

form=action ile formdaki bilgilerimizi kayit_tamamla.php ye gönderdik..ve şimdi kullanacağımız bu kodlarla o bilgileri database’e yazacağız…

işte kayit_tamamla.php için gerekli kodlar:

Kod:

<?php
$ad = $_POST['ad'];
$kullaniciadi = $_POST['kullaniciadi'];
$sifre = $_POST['sifre'];
$posta = $_POST['posta'];
if(empty($ad)){
echo("<center><b>Adınızı Yazmadınız. Lütfen Geri Dönüp Doldurunuz.</b></center>");
}elseif(empty($kullaniciadi)){
echo("<center><b>Kullanıcı Adınızı Yazmadınız. Lütfen Geri Dönüp Doldurunuz.</b></center>");
}elseif(empty($sifre)){
echo("<center><b>Şifrenizi Yazmadınız. Lütfen Geri Dönüp Doldurunuz.</b></center>");
}elseif(empty($posta)){
echo("<center><b>E-Postanızı Yazmadınız. Lütfen Geri Dönüp Doldurunuz.</b></center>");
}else{
include("db_ayar.php");
$sql = "insert into uye (ad, kullaniciadi, sifre, email, hakkimda)
values ('$ad', '$kullaniciadi', '$sifre', '$posta', '$hakkimda')";
$kayit = mysql_query($sql);
}
if (isset ($kayit)){
echo "Üye Kaydınız Yapılmıştır";
}
else {
echo "Kayıt Başarısız sanane@banane.com adresinden iletişime geçin";
}
?>

Eveet…Şimdi Bir Püff Nokta daha;dikkat ettiyseniz db_ayar.php dosyasını kayit_tamamla.php dosyamızda include ettik..

neden? diye sorarsanız hemen söyleyim,bu PHP dosyamızda formdan gelen bilgileri database’imize kaydetmeyecekmiyiz?evet…ozaman bizim önceden oluşturduğumuz DB ile bağlantı kurmamız gerek değilmi? evet…işte biz o bağlantıyı yukarda db_ayar.php ile kurmadıkmı?
eveeeet…Yaşasın,PHP’yi seviyorum…

Buraya Kadar Neler Yaptık Bi Hatırlayalım…

*Önce Bir SQL oluşturduk: ki üyelerimizin kaydını tutalım diye

*Sonra PHP dosyalarımızı bu SQL ile bağlantı kurdurmak için bir db_ayar.php dosyası oluşturduk..

*Daha Sonra üyelerimizin kaydolması için bir Form oluşturduk

*Bu Formdaki Bilgileri Database’e yazdırmak için bir kayit dosyasını PHP ile oluşturduk….

Yarısı Gitmiş…Azı Kalmış….

Bundan Sonrası Kolay…
Şimdi Gelelim Üyeler Sisteme Nasıl Giriş Yapacak?

Bunun için Bir Form Sayfası Daha Oluşturalım ve ismini giris.php verelim…giris.php nin içine şu kodları yerleştirin:

Kod:

<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1254">
<title>Üye Girişi</title>
</head>

<body>
<center>
<?php
if (!$hata =="") {
echo '<font face="verdana" size="2" color="#800000"><b>Giriş Sırasında Hata Oluştu</b>
';
echo 'Şifre veya Kullanıcı Adı Yanlış. Tekrar Deneyin
';
}
?>
</center>
<center>

<form action="giris_tamamla.php" method="post">
<table border="1" cellspacing="1" style="border:1.5pt solid #0000FF;
" width="28%" id="AutoNumber1" height="2" fpstyle="6,011111100">
<tr>
<td width="100%" colspan="2" height="18"
style="border-bottom:1.5pt solid black; font-weight: bold; color:
white; background-color: #000000; border-left-style:none;
border-right-style:none; border-top-style:none">
<p align="center"><b><font color="#0000FF" face="Verdana">Üye Girişi</font></b></td>
</tr>
<tr>
<td width="25%" height="22" style="font-weight: bold; color:
black; border-style: none; background-color: silver">Üye
Adı</td>
<td width="75%" height="22" style="color: navy; border-style:
none; background-color: silver"><input type="text" name="kullaniciadi" size="20"></td>
</tr>
<tr>
<td width="25%" height="22" style="font-weight: bold; color:
black; border-style: none; background-color: silver">Şifre</td>
<td width="75%" height="22" style="color: navy; border-style:
none; background-color: silver"><input type="password" name="sifre" size="20"></td>
</tr>
<tr>
<td width="100%" colspan="2" height="1" style="font-weight:
bold; color: black; border-style: none; background-color: silver">
<p align="center"><input type="submit" value="Gönder"></td>
</tr>
</table>
</form></center>
</body>

</html>

Bu Formda üyemizde Kullanıcı Adını ve Şifresini Yazmasını istedik…ve Gönder butonuna bastığında giris_tamamla.php dosyasına gitmesini sağladık…

ee giris_tamamla.php dosyası nerde? oluşturmadıkki?

biraz sabır şimdi oraya geldik işte…

Yukardaki Formdaki bilgileri Db mize Göre Sorgulayıp üyenin girişini sağlayacak veya reddecek bir giris_tamamla.php dosyası yapalım şimdi…aşağıdaki kodları giris_tamamla.php dosyası oluşturup içine
yapıştırın…

Kod:

&lt;?php

$kullaniciadi = $_POST['kullaniciadi'];
$sifre = $_POST['sifre'];

if ((!$kullaniciadi =="") and (!$sifre =="")) {
include("db_ayar.php");
$sql = "select * from uye where kullaniciadi='$kullaniciadi' and sifre='$sifre' ";
$kontrol = mysql_query($sql);
$kayitsayisi = mysql_num_rows($kontrol);
if ($kayitsayisi == "0") {
header ("Location: giris.php?hata=yes");
} else {
$kontrol_ok = mysql_fetch_array($kontrol);
setcookie ("kullanici", "$kontrol_ok[kullaniciadi]");
header ("Location: uye_panel.php");
}
}
else {
header ("Location: giris.php?hata=yes");
}
?&gt;

Bu Kodlar Ne işe Yarıyor demeyin Kodların Hemen üstünde açıkladım zaten…Gördüğünüz Gibi db_ayar.php dosyasını buradada kullandık…

Yalnız Şu Soruyu Sorabilirsiniz….uye_panel.php Dosyasıda ne oluyor??
Tabikide üye giriş yaptıktan sonraki görünecek olan panel,yada sayfa…

Dayanın Az Kaldı….Ama zevk alarak öğreniyosunuz umarım….

Şimdi O üye_panel.php sayfasına gelelim…Ben aşağıdaki kodları kullandım,tabi siz daha farklı şeylerde kullanabilirsiniz…

Kod:

<?php
if (isset($_REQUEST["kullanici"])) {
include("db_ayar.php");
$sql = ("select * from uye");
}
else {
header ("Location: uyari.html");
}
?>
<a href="cikis.php">Çıkış
<? echo $_REQUEST["kullanici"]; ?>
<html>
<head>
<title>BİSMİLLAH</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1254″>
</head>
<body>
<table border="0″ width="80%">
<tr>
<center>
<h1>Üye Girişi Yaptığınız İçin Bu Sayfaya Ulaşabiliyorsunuz</h1>
</center></tr>
</table>
</body>

Eveet…Bitti…

demiyecem tabiki…

Şimdi Birileri bu Sayfaya izinsiz girmeye çalıştı diyelim…yukarda kullandığımız

Kod:

<?php
if (isset($_REQUEST["kullanici"])) {
include("db_ayar.php");
$sql = ("select * from uye");
}
else {
header ("Location: uyari.html");
}
?>

bu kodlarla onlara bir oyun oynayalım isterseniz…

bir uyari.html sayfası oluşturalım ve karşılacakları sayfayı hazırlayalım…herhangi bir html sayfası olabilir,sadece içeriğinde kayıt olmadan bu sayfaya girecek olan kişilere uyarı mahiyetinde bir
sayfa olsun… ben aşağıdaki gibi bişey yaptım…

Kod:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1254">
<title>Bilisimogretmeni.com</title>
</head>
<body>
<p align="center"><font color="#800000"><b>ÜYELERİMİZE ÖZEL SAYFAYA ULAŞMAYA ÇALIŞIYORSUNUZ!!!</b></font></p>
<p align="center"><font color="#800000"><b>
<a href="giris.php" style="text-decoration: none">GİRİŞ YAPIN</a></b></font>

<p align="center"><font color="#800000"><b>YADA</b></font></p>

<p align="center"><font color="#800000"><b>
<a href="kayit.php" style="text-decoration: none">KAYIT OLUN</a></b></font>

</body>
</html>

Eveet,bu Uyarımızıda Verdik…

Peki ya sisteme üye olan kişiler nasıl Çıkış Yapacaklar?

Bu Soruyuda Şu Kodları Kullanarak Halledelim ve Konumuzu Bitirelim..

Kod:

<?php
setcookie("kullanici","",time()-360000);
header ("Location: index.php");
?>

bu kodlarıda cikis.php olarak bir dosyaya kaydedin..

böylece üyeleriniz cikis.php dosyasını kullanarak çıkış yapabilir…Eveeet…Sonunda Bir Dersin Daha Sonuna geldik..Şimdi Bu anlatımımı kullanarak,hazırlamış olduğunuz html sayfalarına bilr üyelik bölümü
ekleyebilirsiniz…formları ben php olarak yapın dedim (örn:kayit.php,giris.php) ama form sayfalarını html yapsanızda farkeden bişey olmayacaktır..

İndir “Php Basit Üyelik Sistemi”

uyee1.zip – 9542 defa indirildi – 4,59 KB
Bu İçeriğe Tepkin Ne Oldu?
  • 24
    ba_ar_l_
    Başarılı
  • 3
    gayet_yi
    Gayet İyi
  • 5
    te_ekk_rler
    Teşekkürler
  • 5
    anlamad_m
    Anlamadım
  • 5
    yetersiz
    Yetersiz
İlginizi Çekebilir
Subscribe
Bildir
guest

Bu site, istenmeyenleri azaltmak için Akismet kullanıyor. Yorum verilerinizin nasıl işlendiği hakkında daha fazla bilgi edinin.

56 Yorum
Inline Feedbacks
View all comments
nezih48

Hocam ilk once emeginiz icin tesekkurederim.

Bende yukarıdaki kodları aynen kopyaladım başarılı bir şekilde DB ‘ye kayıt olunabiliyor ama kullanıcı girişi olarak bilgilerimi girdiğimde aşağıdaki hataları veriyor bu neden olur hocam?

saygılarımla.

Warning: Cannot modify header information – headers already sent by (output started at /home/…./public_html/……com/giris_tamamla.php:9) in /home/nezihkal/public_html/elbisestore.com/giris_tamamla.php on line 24

Warning: Cannot modify header information – headers already sent by (output started at /home/…../public_html/…..com/giris_tamamla.php:9) in /home/nezihkal/public_html/elbisestore.com/giris_tamamla.php on line 25

Administrator

[quote name=”zorunamıgitti”]MySQL NASIL YAPILIOYR
bide siteleri nasıl yorum sayfası yapıyır[/quote]
Mysql nasıl yapılıyor derken ? soruyu biraz daha açarsanız
yorum sayfası için veri tabanında ayrı bir tablo oluşturup konuların id’lerine göre eklemek gerekir…

zorunamıgitti

MySQL NASIL YAPILIOYR
bide siteleri nasıl yorum sayfası yapıyır

barann

Daha denemedim ama anlatımın çok güzel. Parmaklarına sağlık.

Administrator

[quote name=”saniye”]bir şey sorabilirmiyim bu kafamı çok karıştırdı veri tabanın adı ne ben bulamadım sizin yazdıgınız yerde hangi isimle veri tabanı kurucaz ki yardımcı olursanız sevinirim tşkler.[/quote]
konunun başında bahsediliyor dikkat ederseniz istediğiniz isimler bir veri tabanı oluşturun örnek üyelik olsun daha sonra CREATE TABLE uye ( ile başlayan satırı çalıştırırsanız uyelik veri tabanı içine uye isimli tablo oluşturup onun üzerinde işşlem yapabilirsinz

saniye

bir şey sorabilirmiyim bu kafamı çok karıştırdı veri tabanın adı ne ben bulamadım sizin yazdıgınız yerde hangi isimle veri tabanı kurucaz ki yardımcı olursanız sevinirim tşkler.

adsızzzzzz

eline sağlık.

pierAppiades

Yardımlarından dolayı saol çok güzel bir anlatım bunu yapamayanda uğraşmasın ^^

Guest

:shock: :shock: hhh

Guest

:arrow: :idea: :evil:

Guest

[quote name=”Anonim”]:lol:[/quote]

Guest

:arrow: :sad: :confused: :lol:

Guest

sen kimsn

chat

çok güzel bir üyelik girişi ve anlatımı olmuş birde bunun admin panelini nasıl yapabiliriz acaba phpmyadmin den silebiliriz gerci ama mesela bir panel olsa ve üyeleri oraya cektirsek istediğimiz üyenin bilgilerini düzenleme veya silme veya ekleme olayını nasıl yapabiliriz bunuda anlatırsanız seviniriz teşekkürler ..

Guest

:lol: