login problem durch coockieabfrage.?

xiles

Grünschnabel
Hallo Leute wir haben auf unserer HP (webspell) ein login prob.
heist: wenn sich einer von uns einloggen möcht wird er abgewiesen und bekommt den text, er möge sich die akzeptanz von cokies in seinem browser erkundigen oder soll sich an den admin wenden.

refreshed man die seite allerding ein - zwei mal geht der login...oder wenn man auf nen link zum forum oder sonwo klickt...der in nem frame seperat geladen wird geht der login hiernach ebenfalls.

haben die abfrage der cokies mal auskommentiert...seitdem geht der login einwandfrei...ist natürlich nur keine dauerhafte lösung.

wir währen sehr froh wenn uns jemand dabei helfen könnt :(

quelltext login ist im anhang in einer .txt

PHP:
	/*if(!$closed_tmp AND !isset($_SESSION['ws_sessiontest'])) {
		$error = $_language->module['session_error'];
	}
	else {*/
		if($anz) {
		
			$check = safe_query("SELECT * FROM ".PREFIX."user WHERE username='".$ws_user."' AND activated='1'");
			if(mysql_num_rows($check)) {
		
				$ds=mysql_fetch_array($check);
		
				// check password
				$login = 0;
				if($ws_pwd == $ds['password']) {
		
					//session
					$_SESSION['ws_auth'] = $ds['userID'].":".$ws_pwd;
					$_SESSION['ws_lastlogin'] = $ds['lastlogin'];
					$_SESSION['referer'] = $_SERVER['HTTP_REFERER'];
					//remove sessiontest variable
					if(isset($_SESSION['ws_sessiontest'])) unset($_SESSION['ws_sessiontest']);
					//cookie
					setcookie("ws_auth", $ds['userID'].":".$ws_pwd, time()+($sessionduration*60*60));					
					//Delete visitor with same IP from whoisonline
					safe_query("DELETE FROM ".PREFIX."whoisonline WHERE ip='".$GLOBALS['ip']."'");
					//Delete IP from failed logins
					safe_query("DELETE FROM ".PREFIX."failed_login_attempts WHERE ip = '".$GLOBALS['ip']."'");
					$login = 1;
					$error = $_language->module['login_successful'];
				}
				elseif(!($ws_pwd == $ds['password'])) {
					if($sleep) sleep(5);
					$get = safe_query("SELECT wrong FROM ".PREFIX."failed_login_attempts WHERE ip = '".$GLOBALS['ip']."'");
					if(mysql_num_rows($get)){
						safe_query("UPDATE ".PREFIX."failed_login_attempts SET wrong = wrong+1 WHERE ip = '".$GLOBALS['ip']."'");
					}
					else{
						safe_query("INSERT INTO ".PREFIX."failed_login_attempts (ip,wrong) VALUES ('".$GLOBALS['ip']."',1)");
					}
					$get = safe_query("SELECT wrong FROM ".PREFIX."failed_login_attempts WHERE ip = '".$GLOBALS['ip']."'");
					if(mysql_num_rows($get)){
						$ban = mysql_fetch_assoc($get);
						if($ban['wrong'] == $max_wrong_pw){
							$bantime = time() + (60*60*3); // 3 hours
							safe_query("INSERT INTO ".PREFIX."banned_ips (ip,deltime,reason) VALUES ('".$GLOBALS['ip']."',".$bantime.",'Possible brute force attack')");
							safe_query("DELETE FROM ".PREFIX."failed_login_attempts WHERE ip = '".$GLOBALS['ip']."'");
						}
					}
					$error= $_language->module['invalid_password'];
				}
			}
			else $error= $_language->module['not_activated'];
		
		}
		else $error=str_replace('%username%', htmlspecialchars($ws_user), $_language->module['no_user']);
	//}
 

Anhänge

Ja funktionieren tut die lösung an ja...aber sollten wir etwas an dem design oder sonwas an der hp ändern...sieht das doch keiner weil die cokies nicht abgefragt werden und somit nicht aktualisiert werden..oder versteh ich das falsch was die funktion der cokies anbelangt?

Auskommentiert ist die funtion der abfrage der cockies im quelltext...In der ersten vier zeilen und ganz unten die abschließende klammer der funktion.
 
Ja funktionieren tut die lösung an ja...aber sollten wir etwas an dem design oder sonwas an der hp ändern...sieht das doch keiner weil die cokies nicht abgefragt werden und somit nicht aktualisiert werden..oder versteh ich das falsch was die funktion der cokies anbelangt?
Entschuldige, aber ich versteh keinen Zusammenhang was eine Änderung der HP mit den Keksen zu tun haben soll...?
http://de.wikipedia.org/wiki/HTTP-Cookie

Auskommentiert ist die funtion der abfrage der cockies im quelltext...In der ersten vier zeilen und ganz unten die abschließende klammer der funktion.
Da wird meines Wissens nur nach einer Variablen $closed_tmp (wird üblicherweise miit if isset gemacht) und nach einer Sitzung namens $_SESSION['ws_sessiontest'] gefragt.

Vielleicht überdenkst Du noch einmal komplett die Fragestellung.
 
Zurück