webForumDet fria alternativet

Lättast sätt bekräfta mot databas

PHP

2 svar · 350 visningar · startad av SoulGod

Medlem sedan aug. 20051 200 inlägg
Frågan#1

Vilket är det lättaste sättet att kontrollera utifall mail & användarnamn finns i databasen innan man registrerar något?

Har ett register-script som ser ut såhär:

if( ($num_caps >= 1) && ($low_caps >= 1) && ($numbers >= 1) && ($str == $pass2) ) {
	
 	$anvnamn = mysql_real_escape_string($_POST['username']);
 	$namn = mysql_real_escape_string($_POST['namn']);
 	$email = mysql_real_escape_string($_POST['email']);	
 	$password = mysql_real_escape_string($_POST['password']);
 	$ulvl = mysql_real_escape_string($_POST['ulvl']);
	
	$passw = md5($password);
	$sinne = date("Y-m-d H:m:s");
	mysql_query("INSERT INTO members (username, namn, email, password, ulvl, sinne) values ('$anvnamn', '$namn', '$email', '$passw', '$ulvl', '$sinne')"); 	
  
	// När allt är sparat, skicka vidare till nyheter
	header('Location: user.php?do=list'); } else {
 echo "Lösenordet innehåller ej nödvändiga tecken, eller är inte identiska i båda fälten";
 } }
Medlem sedan juni 20014 290 inlägg
#2

Gör en select och kontrollera hur många träffar/rader du får tillbaka, 0 träffar så finns användaren inte, 1 eller flera så finns användaren.

Medlem sedan juni 20006 031 inlägg
#3

Man kan även sätta UNIQUE på fälten.
http://dev.mysql.com/doc/refman/5.0/en/constraint-primary-key.html

257 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
118 ms — deklarationer (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)