user name überprüfen ob doppelt vorhanden

egreis

Mitglied
hi,

habe gesucht und nichts gefunden!

wie kann ich überprüfen ob ein user name schon existiert, bei seiner anmeldung am besten? dies ist ja wegen der eindeutigkeit eines user bei einem login system wichtig.

danke...
 
ein paar mehr infos wären glaub nicht verkehrt. Benutzt du eine datenbank? Wenn ja, dann überprüf doch einfach, ob der benutzername, den jemand bei der anmeldung in ein formular eingibt, irgendwo in der mysql user tabelle vorhanden ist. mit num_rows = 0 oder = 1 lässt sich das doch einfach realisiern.
 
Also ich gehe mal davon aus du willst Testen ob in der Db der gleiche Username vorhanden ist, dazu gibts im prinzip ne einfache möglichkeit

PHP:
$query = "select * from $table where (username='$name')";
$result = mysql_query($query);
$row = mysql_fetch_array($result);
$checked_nickname = $row['username'];

if($name == $checked_nickname){
echo "Der Name <b>$name</b> ist bereits in der Datenbank vorhanden.";
echo "<br><br>";
}

$name is der den du im formular benutzst und der $checked_nickname sind die die du aus der table liest

Sollte funktionieren :) zumindest bei mir gings
 
jaja, mit mysql und php und datenbank und allem drum und dran. sorry, dass ich das nicht erwähnt hatte.

die zweite möglichkeit werde ich gleich mal testen, sowas hatte ich gesucht.

tausend dank. hoffe es klappt!

ride on.
 
die einfachste möglichkeit um soetwas zu verhindern ist, dass Feld ganz einfach 'unique' zu setzen .. und dann praktisch mit:

PHP:
if(!mysql_affected_rows($db) == 1) { .... }

wenn der name etc schon vorhanden sein sollte, gibt mysql '0' also false zurueck ...
somit waere '1' (extra) db query gespart..

my 2 eurocents... :-)
 
neues problem

also jungens,

ich hab die lösung verwendet, der ich oben ja schon zugestimmt hatte, die mit dem nickname.

das mit dem überprüfen klappt ja auch super, aber...

danach will ich den nickname als variable übergeben, an ein formular, das zur weiteren anmeldung des users dient. in diesem formular können weitere felder ausgefüllt werden. das formular ist im gleichen file untergebracht, dh es wird über if aufgerufen, das klappt super. der user name steht auch drin, einfach als $nickname eingefügt.

wenn ich nun aber das formular über eine weitere datei in die datenbank übertragen lassen möchte, geht der $nickname verloren. alle anderen felder, die ich über <input> felder eingebe, werden jedoch übergeben.

nun, was ist das problem bei der variablenübergabe? irgendwie wundert mich das schon.

vielleicht reicht euch dies ja als problembeschreibung.

gerne poste ich auch die zwei files, spar mir das jetzt aber mal aus platzgründen. es geht mir auch eher um die theorie der variablen übergabe...

danke schon mal jetzt...
 
füge deinem Formular folgende Zeile hinzu:

Code:
<input type="hidden" name="nickname" value="<?php echo $nickname ?>">

damit sollte die Variable $nickname weiter übergeben werden
 
Zurück