Werte aus MySQL werden nicht verglichen

mittermg

Grünschnabel
Hallo,

habe da ein kleines Problem, oder sagen wir das Problem habe ich jetzt schon seit 5 Std. und ich komme einfach nicht drauf.
Wenn ich eine Abfrage aus der Datenbank mache, werden die Werte nicht verglichen, obwohl der Wert einwandfrei ausgegeben wird.

PHP:
    $nickname = "mr.max";


    mysql_select_db($database) OR die(mysql_error());    
	$sql = "SELECT                
	   user                
	FROM                
	   tbl_user            
	ORDER BY                
	   user DESC;";    
 
	$result = mysql_query($sql) OR die(mysql_error());            
	
	while($row = mysql_fetch_assoc($result)) {        
                $db_user = $row['user'];
		if ($db_user = $nickname)
		{    
		    $user_acces = "1";        
		} 
		else 
		{            
		    $user_acces = "0";        
		}
	}

Mit
if ($db_user = $nickname)
bekomme ich bei $user_acces immer den Wert 1
und mit
if ($db_user == $nickname)
bekomme ich immer den Wert 0


Mir fällt nichts mehr ein, habt ihr eine Idee?

Gerry
 
Code:
$db_user = $nickname
....ist eine Zuweisung...danach erhält $db_user den Wert von $nickname....ist diese Zuweisung erfolgreich, ist ihr Rückgabewert "true" oder eben "1"
Code:
$db_user == $nickname
...ist ein Vergleich...ist $db_user nicht identisch mit $nickname, ist der Rückgabewert des Vergleiches "false" oder "0"....

ergo...in PHP

=..Zuweisungsoperator
==...Vergleichsoperator
===..Vergleichsoperator, welcher zusätzlich den Typ der Werte prüft
 
Danke habe den Fehler gefunden, ist mir gestern vorm einschlafen noch eingefallen.
Ich hätte mir beinahe den Kopf eingehaun, als ich draufgekommen bin, aber es gibt solche Tage.
Es lag an der while Schleife, und da mr.max nicht an letzter Stelle in der DB stand, wurde die 1 logischerweise wieder überschrieben.

Danke trotzdem

Gerry
 
Zurück