Kopanelden Login ve Kayıt Sorunu

  • Konbuyu başlatan Konbuyu başlatan truantme
  • Başlangıç tarihi Başlangıç tarihi
Konu Yazar

truantme

New Member
Tem
17
0
XAMMP ile kopanel kurdum. Fakat hesabımla login olamıyorum ve yeni kayıt olmuyor.. Clan rank user rank çalışıyor.. Fakat login ve kayıt olamıyorum sorun ne olabilir?

Şimdiden teşekkürler..
 
Cevap: Kopanelden Login ve Kayıt Sorunu

ID pass yanlış diyor sanırım tb_user tablosuna girmiyor..

Kod:
[COLOR="#ff0000"][B]Login PHP[/B][/COLOR]

<?php
	
	if (!defined('KODEVS') || KODEVS != 1)
		die();

	class Page
	{
		private $site, $database, $content, $replace;
		private $cacheable = FALSE;
		private $cacheTime = 0;
		
		function __construct($site)
		{
			$this->site = $site;
			$this->config = $site->config;
			$this->database = $site->database;

			Template::SetVar('title', $this->config['SITE']['TITLE']);
		}

		function Run()
		{
			$user = $this->site->SanitizeName($_POST['userid'], 20);
			$pass = $_POST['passwd'];
			$db = $this->database[ADB];

			$num_rows = $db->doQuery('SELECT strAccountID, strPasswd, strAuthority, nVotePoints FROM TB_USER WHERE strAccountID = ?', $user);
			if ($num_rows == -1)
			{
				$this->Error('DB_ERROR');
				$db->getError();
				return;
			}
			else if ($num_rows == 0)
			{
				$this->Error('LOGIN_FAILED');
				return;
			}
			$row = $db->doRead();
			$pass = $this->site->doHashPassword($pass);
			if ($pass != $row['strPasswd'])
			{
				$this->Error('LOGIN_FAILED');
				return;
			}
			
			$_SESSION['bLoggedIn'] = TRUE;
			$_SESSION['strAccountID'] = $row['strAccountID'];
			$_SESSION['strPasswd'] = $row['strPasswd'];
			$_SESSION['strAuthority'] = $row['strAuthority'];
			$_SESSION['nVotePoints'] = $row['nVotePoints'];
			$_SESSION['IP'] = $this->site->GetRemoteIP();

			header('Location: ./?page=account');
		}

		function Error($error)
		{
			$this->content = Template::Load('error', array('errmsg' => Template::GetLangVar($error)));
		}

		function GetTemplate()
		{
			return $this->content;
		}
		
		function IsCacheable()
		{
			return $this->cacheable;
		}
		
		function CacheTime()
		{
			return $this->cacheTime;
		}
		
		function __destruct()
		{
		}
	}
	
?>

Kod:
[COLOR="#ff0000"][B]Register PHP[/B][/COLOR]

<?php
	
	if (!defined('KODEVS') || KODEVS != 1)
		die();

	class Page
	{
		private $site, $database, $content;
		private $cacheable = FALSE;
		private $cacheTime = 0;
		
		function __construct($site)
		{
			$this->site = $site;
			$this->config = $site->config;
			$this->database = $site->database;
			
			Template::SetVar('title', $this->config['SITE']['TITLE'] . Template::GetLangVar('PAGE_REGISTER_TITLE'));

			if (isset($_GET['act']))
				$this->cacheable = FALSE;
		}

		function Run()
		{
			Template::SetVar('reg_error', NULL);
			if ($this->site->loggedIn)
			{
				$this->content = Template::Load('error', array('errmsg' => Template::GetLangVar('REG_ALREADY_REGGED')));
				return;
			}

			switch (@$_GET['act'])
			{
				case 'process':
					$this->Process();
					break;
					
				case 'verify':
					break;
					
				default:
					$this->content = Template::Load('register');
			}
			
		}
		
		function Process()
		{
			$s = $this->site;
			$db = $this->database[ADB];
			
			if (!@isset($_POST['submit']))
			{
				Template::SetVar('reg_error', NULL);
				$this->content = Template::Load('register');
				return;
			}
			
			$user = $s->SanitizeName(@$_POST['user']);
			$pass1 = $s->SanitizeName(@$_POST['passwd1'], 12);
			$pass2 = $s->SanitizeName(@$_POST['passwd2'], 12);
			$wpass1 = $s->SanitizeName(@$_POST['wpasswd1'], 16);
			$wpass2 = $s->SanitizeName(@$_POST['wpasswd2'], 16);
		
			if (strlen(@$_POST['user']) > 20 || strlen($user) < 3)
			{
				$this->Error('REG_ACC_SIZE');
				return;
			}
			
			if (!preg_match("/^[a-zA-Z0-9]+$/", $_POST['user']))
			{
				$this->Error('REG_ACC_INVALID');
				return;
			}
			
			if (strlen($pass1) > 12 || strlen($pass1) < 5)
			{
				$this->Error('REG_PASS_SIZE');
				return;
			}
			
			if ($pass1 != $pass2)
			{
				$this->Error('REQ_PASS_MATCH');
				return;
			}

			if (strlen($wpass1) > 16 || strlen($wpass1) < 6)
			{
				$this->Error('REG_WPASS_SIZE');
				return;
			}
			
			if ($wpass1 != $wpass2)
			{
				$this->Error('REQ_WPASS_MATCH');
				return;
			}

			$num_rows = $db->doQuery('SELECT strAccountID FROM TB_USER WHERE strAccountID = ?', $user);
			if ($num_rows == -1)
			{
				$this->Error('DB_ERROR');
				$db->getError();
				return;
			}
			elseif ($num_rows > 0)
			{
				$this->Error('REG_ACCOUNT_IN_USE');
				return;
			}

			$pass1 = $this->site->doHashPassword($pass1);
		
			$num_rows = $db->doQuery('INSERT INTO TB_USER (strAccountID, strPasswd) VALUES(?, ?)', $user, $pass1);
			if ($num_rows == -1)
			{
				$this->Error('DB_ERROR');
				$db->getError();
				return;
			}

			$num_rows = $db->doQuery('INSERT INTO WAREHOUSE (strAccountID, nMoney, dwTime, WarehouseData, strSerial, strWarehousePW) VALUES(?, 0, 0, NULL, NULL, ?)', $user, $wpass1);
			if ($num_rows == -1)
			{
				$this->Error('DB_ERROR');
				$db->getError();
				return;
			}
			
			$this->content = Template::Load('register-complete');
		}
		
		function Error($error)
		{
			Template::SetVar('reg_error', '<@register-error@>');
			Template::SetVar('reg_errmsg', Template::GetLangVar($error));
			$this->content = Template::Load('register');
		}

		function GetTemplate()
		{
			return $this->content;
		}
		
		function IsCacheable()
		{
			return $this->cacheable;
		}
		
		function CacheTime()
		{
			return $this->cacheTime;
		}
		
		function __destruct()
		{
		}
	}
	
?>
 
Cevap: Kopanelden Login ve Kayıt Sorunu

sorun tam olarak nedir
login de şifreyi kabul ediyor fakat üye girişi yapmıyor mu?
bunlardan gördüğüm kadarıyla session açmamışsınız.
 
Cevap: Kopanelden Login ve Kayıt Sorunu

doHashPassword fonksiyonunu bi kontrol ediver
 
Cevap: Kopanelden Login ve Kayıt Sorunu

Arkadaşın Dediğini yaptın hala olmadımı ? Yoksa ?
bence fonksiyonu bulamadı : ))

//////////////////////
+++++++++++
@truantme -> dohashpadword( ve sondaki bir ) yı silerek deneyiver
yine olmuyor sa giriş de açılan session ile kontrol deki session değerlerini karşılaştırman gerekir.
çoğu da varsayım tabiki belkide de çok daha farklı birşey çıkabilir. bu kadarcık bilgiden bu kadar varsayım.
 
Geri
Üst Alt