merhaba arkadaşlar yaptığım sayfama üyelik için aktivasyon maili olayını eklemek istiyorum biraz araştırmama rağmen php de yeni olduğum için işin içinden çıkamadım elinde hazır kodlar olan varsa benimle paylaşabilir mi
k aktivasyon icin su yolu izleyebilirsin kayit esnasinda rastgele bir sayi uretip ucuna sonuna guvenlik icin bir kac karakter harf ekleyip onu md5 lersin ve kullanici bilgileriyle veri tabanina kaydedersin. Tabi birde onay diye bir kolonun olur onuda onun degeri daima 0 olur onaylaninca 1 e doner ki kisi sitede aktif olsun simdi bu md5 li sifreyi kaydettik sonrada onu aktif edecegin sayfa adresine get le fyolliyayacaksin
Site.com/onay.php?code=.$md5lisifre gibi bunu maille gondereceksin. Sonra onay.php sayfasinda o kodu alman gerekli get le alip o kodu veritabaninda taratip kime aitse onun onay daki degerini 1 yapacaksin
< Bu ileti mobil sürüm kullanılarak atıldı >
Elinde hazır kod olan varmı bilmem ancak ben sana kullandığım kodları vereyim. sen kendine göre düzenlersin.
Öncelikle mantığını şöyle işler. diyelimki bir kullanıcı siteye girdi ve üye olmak istedi. gerekli bilgileri doldurdu ve kayıt ol dedi. Şimdi buraya kadar herşey normal peki nasıl bu aktivasyon zamazingosu çalışır. şöyle
öncelikle veritabanında bulunan uyeler tablosuna ek stun ekleyeceksin. bunun adına durum diyebiliriz kontrolleri sağlamamız için gerekli olacak.
herşeyden önce bu stunu ekledik. şimdi aktivasyonlu üyelik işlemi için üye girişi kontrollerini sağlamamız gerekecek.
üye girişi yapılan sayfada bulunan kodlarda şöyle bir yapı oluşturmalısın.
üye giriş yaparken şifre ve kullanıcıadının aynı olup olmadığını kontrol eden kodlarımız vardır.
genelde bu yapı kullanılır kodların nedir bilmediğim için basit şekilde örnek vereceğim.
$uyekontrolonayli = @mysql_query("SELECT * FROM uyeler WHERE kullaniciadi='$uyegirisikullaniciadi' AND sifre='$uyegirisikullanicisifresi' AND durum='1' LIMIT 1"); $uyekontrolonaylisayisi = @mysql_num_rows($uyekontrolonayli); $uyekontrolonaysiz = @mysql_query("SELECT * FROM uyeler WHERE kullaniciadi='$uyegirisikullaniciadi' AND sifre='$uyegirisikullanicisifresi' AND durum='0' LIMIT 1"); $uyekontrolonaysizsayisi = @mysql_num_rows($uyekontrolonaysiz);
Bir kullanıcı üye olduğuzaman uyeler tablosunun durum stunu 0 olacak.
ve aktivasyon stununa benzersiz bir kod atadık.
Üye girişi yapıldığı zaman üye olan kişinin durum stunu kontrol ediliyor eğer durum stunu = 0 ise giriş başarısız oluyor.
Şimdi gelelim üyeye aktivasyon kodunu göndermeye ve bu aktivasyon kodunu siteye girdiği zaman üyenin durumu =1 olacak. ve giriş yaptığı zaman girişi gerçekleşecek.
bir dosya oluşturacağız adına ise aktivasyon.php diyelim
bu dosya içerisine gerekli şekilde veritabanı bağlantılarını yapalım.
daha sonra bu bilgiler ile uyeler tablosunu sorgulatacağız.
$kontrol = @mysql_query("SELECT * FROM uyeler WHERE email='$email' AND aktivasyon='$aktivasyonkodu' AND durum='0' LIMIT 1"); $kontrolsayisi = @mysql_num_rows($kontrol);
if($kontrolsayisi>0){
$guncelle = @mysql_query("UPDATE uyeler SET durum='1' WHERE email='$email' AND aktivasyon='$aktivasyonkodu' LIMIT 1");
@header("Location:benimsayfam.php");
} else {
echo "aktivasyon kodu yanlış";
}
Gelen aktivasyon kodu ile veritabanındaki aktivasyon kodu aynı ise üyenin durum stununu = 1 yap dedik.
Sana mantığını anlattım bundan sonrası senin yapacağın birşeydir. kolay gelsin