tomtom: Variablen aus Funktion global verfügbar machen

Beitrag lesen

Hallo,

Ich bin gearade dabei mir ein Script zu erstellen, mit dem man seinen Account freischalten kann.
Leider geling mir das nicht ganz. >_<

Das Problem ist folgendes:
Wenn die Funktion eine falsche Eingabe im Formular wahrnimmt, dann soll der Fehler neben dem Forumlar ausgegeben werden (z.B. 'Bitte dieses Feld füllen' bei einem leeren Feld).

Dieses System der Fehleranzeige ist sehr oft zu sehen, denke ich mal und dürfte eigentlich garnicht so schwer sein..

Ich gestehe, dass die Methode, die ich hier anwende, nicht die ist, die man in diesem Falle verwenden soll.
Leider weiß ich aber nicht, wie ich die oben beschriebene Funktion anders gestallten kann.

Hier die PHP-Funktion und das Formular (in gekürzter Funktion).

Es wäre sehr sehr nett, wenn sich jemand meinem Problem annehmen könnte =)

  
<?php  
	function register() {  
		// globale Variablen definieren  
		$wunsch_name = $_POST['wunschname'];  
		$passwort1 = $_POST['passwort1'];  
		$passwort2 = $_POST['passwort2'];  
		$email1 = $_POST['email1'];  
		$email2 = $_POST['email2'];  
		  
		// bereits vergebene Benutzernamen auslesen  
		$sql = "SELECT  
					user_benutzername  
				FROM  
					".MYSQL_PREFIX."users  
				";  
		$result = mysql_query($sql) OR die(mysql_error());  
		$benutzernamen = array();  
		while ($entry = mysql_fetch_assoc($result)) {  
			array_push($benutzernamen, $entry['user_benutzername']);  
		}  
		  
		// Eingaben auf 'leer' prüfen  
		$wrong = 0;  
		if($wunsch_name == '') {  
			$name_empty = 1;  
			$wrong ++;  
			  
		}  
		if($passwort1 == '') {  
			$pw1_empty = 1;  
			$wrong ++;  
		}  
		if($passwort2 == '') {  
			$pw2_empty = 1;  
			$wrong ++;  
		}  
		if($email1 == '') {  
			$mail1_empty = 1;  
			$wrong ++;  
		}  
		if($email2 == '') {  
			$mail2_empty = 1;  
			$wrong ++;  
		}  
		  
		// Prüfen, ob Benutzername schon vorhanden  
		if (!in_array($wunsch_name, $benutzernamen)) {  
			$username_ok = 1;  
		}  
		  
		// Prüfen ob PW1 == PW2  
		if ($passwort1 == $passwort2) {  
			$pw_ok = 1;  
		}  
		  
		// Prüfen ob MAIL1 == MAIL2  
		if ($email1 == $email2) {  
			$email_ok = 1;  
		}  
		  
		// Wenn alles OK, dann registieren  
		if ($wrong == 0) {  
			if(isset($username_ok) AND isset($pw_ok) AND isset($code_ok)) {  
				// REGISTRIEREN  
				echo '<span style="color:#0F0">Dein Account wurde erfolgreich freigeschaltet. Viel Spaß.</span>';  
			}  
		}	  
	}  
	  
// Funktion aufrufen, wenn SUBMIT betätigt wird  
if(isset($_POST['submit_register'])) {  
	register();  
}  
?>  

  
<!-- Das verkürzte Formular -->  
<form action="index.php" method="post">  
	Wunsch-Name:  
	<input name="wunschname" type="text" class="standard_form_text" size="20" />  
    [code lang=php]<?php  
		if(isset($_POST['submit_register']) AND isset($name_empty)) {  
			echo 'Bitte dieses Feld füllen';  
		}  
	?>
<!-- weitere Eingaben...... -->  

</form>
[/code]