Daten Prüfen

prims

Grünschnabel
Hallo,

ich habe nun ein Script ,mit einem Anmeldeformular in php4. Nach dem der User auf Senden klickt wird die regok aufgerufen. Dort werden die gemachten Angaben in die Datenbank übermittelt und ein Automatisches Passwort generiert. Ich hätte es jetzt gerne das mein Script überprüft ob der Username oder die E-Mailadresse schon in der Datenbank vorhanden sind, und erst dann die Daten in die Datenbank schreibt. Andernfalls soll es einfach eine Fehlermeldung geben. Kann mir jemand helfen.

Marcus
 
du musst halt, bevor du die daten einträgst, eine db abfrage mit eben diesen daten machen. dann fragst du das ergebnis ab, ob du evtl. datensätze bekommen hast. dementsprechend kannst du dann eine fehlermeldung ausgeben.

PHP:
$sql = "SELECT * FROM t_name WHERE (username = '$username')";
$result = mysql_query ($sql);

if (mysql_num_rows ($result) > 0) {

  // Ein Datensatz wurde gefunden.


} else {

  // kein eintrag wurde gefunden
						  		
}
 
Es wäre besser wenn du das bereits in der mySQL Tabelle festlegst. Angenommen die Spalte für die Nicknames heißt Name. Dann schreibst du am Schluss des CREATE TABLE Befehls:
Code:
...
NAME VARCHAR(15),
EMAIL VARCHAR(40),
UNIQUE (NAME)
)';
Den Fehler der Auftritt wenn ein doppelter Datensatz angelegt werden soll fängst du dann einfach ab.
 
hi,

ich gebe per anmeldungsformular name usw ein und will nun das er nach bestätigung des fromulars checkt obs den teamnamen schon gibt hab team schon auf unique gesetzt allerdingst kommt dann eine benutzerunfreundliche fehlermeldung will das nun mit einem scirpt umgehen nur leider funktioniert das nicht was mache ich falsch?

Code:
$sql1 = "SELECT * FROM paradise_de WHERE (team = '$team')"; 
$result = mysql_query ($sql1); 

if (mysql_num_rows ($result) > 0) { 

  		echo "Teamname bereits vergeben"



} else { 

  $sql = "INSERT INTO paradise_de
    		(
			  team,name,vorname,datum,anschrift,stadt,land,email,
			   name1,vorname1,datum1,email1,
			   name2,vorname2,datum2,email2,
			   name3,vorname3,datum3,email3
			   
			   )
		VALUES
    		(
				'$team','$name','$vorname','$datum','$anschrift','$stadt','$land','$email',
				'$name1','$vorname1','$datum1','$email1',
				'$name2','$vorname2','$datum2','$email2',
				'$name3','$vorname3','$datum3','$email3'
				
				)";

	  
		
$result = mysql_query($sql) OR die(mysql_error());
echo "Vielen dank für Ihre Registrierung Sie erhalten in kürze ein Email"

  }                                 

?>
 
Zurück