Prijava

Dakle, želim u prijavu unijeti još jednu varijeblu a to je nivo pristupa… probao sam ovako ali nejde i nemam više ideja! :band:

Bez crvenog dijela koda ide normalno ali kad dodam liniju za provjeru levela, skripta uopće ne prolazi!

$qry=“SELECT * FROM members WHERE login=’$login’ AND passwd=’”.md5($_POST[‘password’])."’";
$result=mysql_query($qry);

//Provjera rezultata upita
if($result) {
	if((mysql_num_rows($result) == 1) [b][color="#FF0000"]&& (trim($_SESSION['SESS_LEVEL']) == '1')[/color][/b]) {
		//Uspješno
		session_regenerate_id();
		$member = mysql_fetch_assoc($result);
		$_SESSION['SESS_MEMBER_ID'] = $member['member_id'];
		$_SESSION['SESS_FIRST_NAME'] = $member['firstname'];
		$_SESSION['SESS_LAST_NAME'] = $member['lastname'];
		$_SESSION['SESS_LEVEL'] = $member['level']; //DODANO
		session_write_close();
		header("location: clanovi.php");
		exit();
	}else
	
	{
		//Krivo
		header("location: login-failed.php");
		exit();
	}
}else {
	die("Greška u povezivanju!");
}

Što sadrži index SESS_LEVEL u $_SESSIONU? Integer ili string ili char ili sta?

[php]AND trim((int)$_SESSION[‘SESS_LEVEL’]) === 1[/php]

[quote=“jcrnkovic”]Što sadrži index SESS_LEVEL u $_SESSIONU? Integer ili string ili char ili sta?

[php]AND trim((int)$_SESSION[‘SESS_LEVEL’]) === 1[/php][/quote]

ako si mu stavio da vrijednost bude integer ne moras radit ===, uvijek ce raditi i ==

raditi će, ali ako je recimo varijabla TRUE, TRUE će uvijek biti == 1, ali === 1 neće :slight_smile:

a uostalom, što neispišeš kolika je $_SESSION[‘SESS_LEVEL’] varijabla, možda uopće nije 1…

nece biti true, jer si joj odredio tip integera - (int), ne moze vise biti boolean jer si ju sigurno konvertirao prije usporedbe, zato i kazem da ti nije potrebno ===

da nisi stavio (int) onda bi ta pretpostavka bila u redu, ovako je bespotrebno…

aha, da, sad vidim :slight_smile: :slight_smile:


Copyright © 2020 WM Forum - AboutContact - Sponsored by: Mydataknox & Webmaster.Ninja