kostenloser Webspace werbefrei: lima-city


Aktivierungsmail kommt nicht

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    davy

    Kostenloser Webspace von davy

    davy hat kostenlosen Webspace.

    Hi !

    Hier habe ich ein Registrierungsformular.

    Wenn ich mich registriere, sollte eine Aktivierungsmail kommen. Es kommt aber keine.

    Ist im folgenden Script ein Fehler?

    <?php
    session_start();
    require('config.inc.php');
    require('function.inc.php');
    
    if(isset($_POST['reg']))
    {
    	//zurücklink im fehlerfall
    	$link = "<a href=\"regist.php\">Zurück</a>";
    	if(get_magic_quotes_gpc())
    	{
    		$_POST['pw1'] = stripslashes($_POST['pw1']);
    		$_POST['pw2'] = stripslashes($_POST['pw2']);
    		$_POST['username'] = stripslashes($_POST['username']);
    		$_POST['email'] = stripslashes($_POST['email']);
    	}
    	//prüfung ob passwörter gleich sind
    	if($_POST['pw1'] == $_POST['pw2'])
    	{
    		//Captcha Sicherheitscode prüfen
    		if($_SESSION['resultat'] != $_POST['code'] && !preg_match("#[0-9]{5}#",$_POST['code']))
    		{
    			echo msgBox("Der Sicherheitscode fehlt oder ist falsch! <br>".$link);
    			exit();
    		}
    		//prüfung ob agbs bestätigt wurden
    		if(isset($_POST['agb'])!=1)
    		{
    			echo msgBox("Die AGB's müssen akzeptiert werden! <br>".$link);
    			exit();
    		}
    		//korrektheitsprüfung username
    		if(!preg_match("#^[a-z0-9äöüß _-]+#mi",$_POST['username']))
    		{
    			echo msgBox("Der Username fehlt oder hat verbotene Zeichen! Erlaubte Zeichen sind 0-9a-zA-ZüöäÜÖÄß_- Leerzeichen! <br>".$link);
    			exit();
    		}
    		//korrektheitsprüfung password_1
    		if(!preg_match("#^[a-z0-9äöüß _-]+#mi",$_POST['pw1']))
    		{
    			echo msgBox("Das Passwort fehlt oder hat verbotene Zeichen! Erlaubte Zeichen sind 0-9a-zA-ZüöäÜÖÄß_- Leerzeichen! <br>".$link);
    			exit();
    		}
    		//korrektheitsprüfung password_2
    		if(!preg_match("#^[a-z0-9äöüß _-]+#mi",$_POST['pw2']))
    		{
    			echo msgBox("Das Passwort2 fehlt oder hat verbotene Zeichen! Erlaubte Zeichen sind 0-9a-zA-ZüöäÜÖÄß_- Leerzeichen! <br>".$link);
    			exit();
    		}
    		//email prüfung
    			/*if(!eregi("^[a-z0-9]+([_.-][a-z0-9]+)*@([a-z0-9]+([.-][a-z0-9]+)*)+\\.[a-z]{2,4}$",$_POST['email']))
    		{
    			echo msgBox("Das E-Mail Format ist nicht korrekt! <br>".$link);
    			exit();
    		}*/
    		//auslesen der usernamem das keiner 2 mal vorkommt
    		$sqlbefehl ="
    					Select 
    						Count(*) As user_anzahl 
    					From 
    						user 
    					Where 
    						username='".mysql_real_escape_string($_POST['username'])."'
    					";
    		$ergebnis_un = mysql_query($sqlbefehl)or die(mysql_error().$sqlbefehl);
    		$wert_un = mysql_fetch_array($ergebnis_un);
    		if($wert_un['user_anzahl'] >0)
    		{
    			echo msgBox("Der Username ist schon an einem anderen User vergeben! Bitte wählen Sie einen anderen Usernamen! <br>".$link);
    			exit();
    		}
    		//auslesen der user-emails das keine keine 2 mal vorkommt
    		$sqlbefehl ="
    					Select 
    						Count(*) As mail_anzahl 
    					From 
    						user 
    					Where 
    						email='".mysql_real_escape_string($_POST['email'])."'
    					";
    		$ergebnis_email = mysql_query($sqlbefehl)or die(mysql_error().$sqlbefehl);
    		$wert_email = mysql_fetch_array($ergebnis_email);
    		if($wert_email['mail_anzahl'] >0)
    		{
    			echo msgBox("Diese Email Adresse bisitzt bereits ein anderer User vergeben! Bitte wählen Sie einen anderen Usernamen! <br>".$link);
    			exit();
    		}
    		else
    		{
    			$datum = time();
    			//zufallsfreischaltcode für den emaillink erzeugen
    			$code = md5(uniqid(microtime($code)));
    			$sqlbefehl ="
    						Insert Into 
    							user
    								(
    									username,
    									pwd,
    									email,
    									code,
    									datum
    								)
    						VALUES	
    								(
    									'".mysql_real_escape_string($_POST['username'])."',
    									password('".mysql_real_escape_string($_POST['pw1'])."'),
    									'".mysql_real_escape_string($_POST['email'])."',
    									'".mysql_real_escape_string($code)."',
    									'$datum'
    								)
    						";
    			$result = mysql_query($sqlbefehl)or die(mysql_error());
    			
    			$empfaenger = $_POST['email'];
    			$betreff .="Registrierung bei www.littis-web.de!";
    			$mailtext .="Hallo ".$_POST['username']."!\n Sie haben sich erfolgreich am ".date("d.m.Y H:i")." bei mir registriert!\n";
    			$mailtext .="Ihre Zugangsdaten sind folgende!\n";
    			$mailtext .="Username: ".$_POST['username']."\n";
    			$mailtext .="Passwort: ".$_POST['pw1']."\n\n";
    			$mailtext .="Um ihre Registrierung nun entgültig zu machen müssen Sie nur noch den nachfolgenden Link betätigen!\n";
    			$mailtext .="http://localhost/l-user/active.php?code=".$code."\n\n";
    			$header .='From: Littis-Usersys Registrierung' . "\n";
    			$header .='MIME-Version: 1.0' . "\n";
    			$header .='Content-type: text/plain; charset="iso-8859-1"' . "\n";
    			
    			mail($empfaenger,$betreff,$mailtext,$header);
    			
    			header("Location: index.php");
    		}
    		if($_POST['pw1'] != $_POST['pw2'])
    		{
    			echo msgBox("Die Passwörter stimmen nicht überein! <br>".$link);
    			exit();
    		}
    	}
    }
    
    require('kopf.php');
    require('head.php');
    ?>
    <table cellpadding="0" cellspacing="0" width="900" border="0">
    <tr>
    <td width="150" align="center" valign="top" class="left"><br />
    <?php include('user_online.php') ?>
    </td>
    <td width="600" align="center" valign="top" class="center"><br />
    
    <table cellpadding="0" cellspacing="0" width="580" border="0">
    <tr>
    <td align="center" height="25" colspan="2" class="listheader">
    <b>Registrierung</b>
    </td>
    </tr>
    <form action="<?php echo htmlentities($_SERVER['SCRIPT_NAME']) ?>" method="post">
    <tr>
    <td class="list_left" align="right">Username:*</td>
    <td class="list_right"><input type="text" name="username" class="textfeld"></td>
    </tr>
    <tr>
    <td class="list_left" align="right">Password:*</td>
    <td class="list_right"><input type="password" name="pw1" class="textfeld"></td>
    </tr>
    <tr>
    <td class="list_left" align="right">Pw-bestätigen:*</td>
    <td class="list_right"><input type="password" name="pw2" class="textfeld"></td>
    </tr>
    <tr>
    <td class="list_left" align="right">E-Mail:*</td>
    <td class="list_right"><input type="text" name="email" class="textfeld"></td>
    </tr>
    <tr>
    <td class="list_left" align="right">Bitte das Ergebnis der Aufgabe ins Feld eingeben*</td>
    <td class="list_right">
    <img src="captcha.php" border="0">
    <input type="text" name="code" class="textfeld">
    </td>
    </tr>
    <tr>
    <td align="center" colspan="2" class="list_bottom">
    <input type="checkbox" name="agb" value="1">
    Agb - akzeptieren:*
    <input type="submit" name="reg" value="Registrieren" class="button">
    </td>
    </tr>
    </form>
    </table><br /> 
    </td>
    <td align="center" width="150" valign="top" class="right"><br />
    <?php
    if(!logged_in())
    {
    include('login_panel.php'); 
    }
    else
    {
    	echo"<a href=\"login.inc.php?logout=1\"><font color=\"c1c1c1\">Logout</font></a>";
    }
    ?>
    </td>
    </tr>
    </table>
    <?php
    require('fuss.php');
    ?>


    Beitrag zuletzt geändert: 27.1.2009 19:07:25 von davy
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. kann es sein das die mail() funktion nicht funktioniert? ...oder hasste schon einmal soo eine Email verschickt?
  4. Autor dieses Themas

    davy

    Kostenloser Webspace von davy

    davy hat kostenlosen Webspace.

    myhead schrieb:
    kann es sein das die mail() funktion nicht funktioniert? ...oder hasste schon einmal soo eine Email verschickt?


    Die funktioniert nicht, darum frage ich euch ja, was der Fehler ist ;)
  5. n********r

    er meint, ob die mail funktion auf den servern von lima-city funktioniert.
    Manchmal gehts nämlich nicht. Ich hab vorgestern auch versucht eine registrierungsmail zu verschicken.
    Aber ging bei mir auch nicht. Vielleicht gehts aber mittlerweile wieder und es ist ein fehler im Code.

    Gruss

    Beitrag zuletzt geändert: 27.1.2009 19:18:13 von n50-planer
  6. Autor dieses Themas

    davy

    Kostenloser Webspace von davy

    davy hat kostenlosen Webspace.

    n50-planer schrieb:
    er meint, ob die mail funktion auf den servern von lima-city funktioniert. Manchmal gehts nämlcih nicht. Ich hab vorgestern auch versucht ne registrierungs email zu schicken, ging bei mir au nicht

    Gruss


    Nein, auf meinem Server, nicht hier bei lima
  7. Wird denn auch was in die Datenbank eingetragen?

    Keine Ahnung ob die Methode, welche Du verwendest, um die Anzahl der Datensätze zu zählen funktioniert (Ich benutz immer die mysql_num_rows() Funktion), aber vllt. liegt das Problem ja einfach in der Abfrage.


    Übrigens:

    echo msgBox("Diese Email Adresse bisitzt bereits ein anderer User vergeben! Bitte wählen Sie einen anderen Usernamen! <br>".$link);

    ... amüsant :D.

  8. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!