Arkadaşlar basit bir üyelik sistemi sınıfı gönderiyorum.
Bu üyelik sınıfı üye kaydı, bilgi güncelleme, giriş ve çıkışını kontrol ediyor.
Ancak 2 ayrı sınıfa daha bağımlılık duyuyor...
onları da ekte veriyorum....
Bunlardan kontrol sınıfı gerekli string kontrollerini yapıyor.
database sınıfı veritabanı işlemlerini yürütüyor.
database sınıfını Mambo Open Source'dan ayıkladım...
Ve gayet kullanışlı....
Kolay gele...
İlk önce database sınıfı gerekli şifrelerle mysql e bağlı olarak çağrılmalı!.
Üyelik sınıfı:
Bu üyelik sınıfı üye kaydı, bilgi güncelleme, giriş ve çıkışını kontrol ediyor.
Ancak 2 ayrı sınıfa daha bağımlılık duyuyor...
onları da ekte veriyorum....
Bunlardan kontrol sınıfı gerekli string kontrollerini yapıyor.
database sınıfı veritabanı işlemlerini yürütüyor.
database sınıfını Mambo Open Source'dan ayıkladım...
Ve gayet kullanışlı....
Kolay gele...
İlk önce database sınıfı gerekli şifrelerle mysql e bağlı olarak çağrılmalı!.
Üyelik sınıfı:
Kod:
defined('_DOGRULUK_KONTROLU_YAPILDI') or die('Direk Erişim Yasaklandı.');
include_once("class.kontrol.php");
/**
* [email protected]
* İbrahim YILDIZ
*
* @version $1.0$
* @copyright Mart 2005
* bu class database classi ile birlikte tasarlandı.database
* classı mambo open source dan alınabilir...
*/
class Uyelik{
var $_tabloadi = "uyeler";
var $_kuladialani = "kuladi";
var $_sifrealani = "sifre";
function UyeKayitEt(& $liste, $kuladi){
global $db;
if(Kontrol :: BosMu($kuladi)) return -1;
if(!Kontrol :: SadeceSayiVeHarfMi($kuladi))return -2;
if($this -> UyeZatenKayitliMi($kuladi) != 0) return -3;
if(!$db -> insertObject($this -> _tabloadi, $liste, null, null)){
// echo "Ekleme Hatası 0001";
return 0;
}
return 1;
}
function UyeProfilGuncelle($kuladi, & $liste){
global $db;
if(Kontrol :: BosMu($kuladi)) return -1;
$uyebilgileri = $this -> UyeBilgisiGetir($kuladi);
if($liste -> id != $uyebilgileri -> id) return -2;
if(!$db -> updateObject($this -> _tabloadi, $liste, "id", null)){
// echo "Ekleme Hatası 0001";
return 0;
}
return 1;
}
function UyeBilgisiGetir($kuladi){
global $db;
if(Kontrol :: BosMu($kuladi)) return 0;
$sql = "SELECT * FROM $this->_tabloadi WHERE $this->_kuladialani='$kuladi'";
$db -> SetQuery($sql);
if(!$db -> loadObject($sonuc)) return -1;
return $sonuc;
}
function UyeZatenKayitliMi($kuladi){
global $db;
if(Kontrol :: BosMu($kuladi)) return -1;
$sql = "SELECT * FROM $this->_tabloadi WHERE $this->_kuladialani='$kuladi'";
$db -> SetQuery($sql);
if(!$db -> query()) return -2;
if($db -> getNumRows() > 0)return 1;
if($db -> getNumRows() == 0)return 0;
return -3;
}
function SifreOnayiKontrol($sifre, $sifre_onayi){
if($sifre == $sifre_onayi) return 1;
return 0;
}
function UyeGirisKontrol($kuladi, $sifre){
global $db;
if(Kontrol :: BosMu($kuladi) || Kontrol :: BosMu($sifre)) return 0;
$UyelikBilgisi = $this -> UyeBilgisiGetir($kuladi);
if(!is_object($UyelikBilgisi)) return $UyelikBilgisi;
$sifre_alani = "UyelikBilgisi->" . $this -> _sifrealani;
if(${$sifre_alani} != $sifre)return -1;
return 1;
}
function UyeOturumAcmaIslemleri($kuladi, $sifre){
global $db, $_SESSION;
if(Kontrol :: BosMu($kuladi) || Kontrol :: BosMu($sifre)) return 0;
$kontrol_sonucu = $this -> UyeGirisKontrol($kuladi, $sifre);
if($kontrol_sonucu != 1)return $kontrol_sonucu;
session_start();
$_SESSION["kuladi"] = $kuladi;
return 1;
}
function UyeOturumKapamaIslemleri(){
global $_SESSION;
$_SESSION["kuladi"] = '';
if(!session_destroy()) return 0;
return 1;
}
} // end class
kontrol sınıfı
defined('_DOGRULUK_KONTROLU_YAPILDI') or die('Direk Erişim Yasaklandı.');
/**
* Kontrol
* gerekli kontrolleri yapar bu sınıf
*
* @package
* @author RANA ARZIK, İbrahim YILDIZ
* @copyright Copyright (c) 2005
* @version $Id$
* @access public
*/
class Kontrol{
function BosMu($degisken){
if(isset($degisken) || $degisken != "") return 0;
return 1;
}
function SadeceSayiVeHarfMi($kuladi){
setlocale(LC_ALL, 'tr_TR.ISO8859-9');
if(ctype_alnum($kuladi)) return 1;
return 0;
}
function EpostaDogruMu($email){
$email = eregi_replace(" ", "" , $email);
if ($email == ""){
return -1; //Boş bırakılmış eposta adrsi
}
$goodem = ereg("^[^@ ]+@[^@ ]+\.[^@ \.]+$", $email, $trashed);
if (!$goodem) return 0; //geçersiz eposta adresi
return 1; //doğru eposta adresi
}
function TrimStripslashes($degisken){
$sonuc = trim(stripslashes($degisken));
return $sonuc;
}
function BoslukAl($degisken){
$degisken = eregi_replace(" ", "" , $degisken);
return $degisken;
}
function TarihiBizimkineDonustur($tarih){
list($yil, $ay, $gun) = split('[/.-]', $tarih);
$y_tarih = "$gun.$ay.$yil";
return $y_tarih;
}
function SifreUret(){
$salt = "abcdefghijklmnoprstuvyzwxqABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
$len = strlen($salt);
$makepass = "";
mt_srand(10000000 * (double)microtime());
for ($i = 0; $i < 8; $i++)
$makepass .= $salt[mt_rand(0, $len - 1)];
return $makepass;
}
} //end class