Hallo zusammen
Ich habe mir ein Login gebastelt mit Flash und PHP / MYSQL.
Nun funtioniert eigentlich alles, ausser, dass ich keine Email bekomme wenn ein neuer User sich registriert hat.
Der User wird in die DB eingetragen und sein Status wird auf 0 gestellt.
0 = kein Login 1= Login möglich.
Hier der Code für die Email:
Anbei noch der komplette user.php code.
DANKE für Eure Hilfe
MAC4-EVER
Ich habe mir ein Login gebastelt mit Flash und PHP / MYSQL.
Nun funtioniert eigentlich alles, ausser, dass ich keine Email bekomme wenn ein neuer User sich registriert hat.
Der User wird in die DB eingetragen und sein Status wird auf 0 gestellt.
0 = kein Login 1= Login möglich.
Hier der Code für die Email:
PHP-Code:
// all checks ok
$query = @mysql_query("INSERT INTO $table (userName,userPassword,userMail,userQuestion,userAnswer,user_status) VALUES "
."('$username','$pass','$email','$question','$answer',false)");
if(!$query)
{
return "error=" . mysql_error();
} else {
return "user=ok";
echo 'Vor insert - Username = ' . $username .'Tabelle' . $table . '<=Ende';
mail("info@matteobaschera.ch","neuer user","neuer user $username registriert");
}
}
PHP-Code:
<?
require_once('conf.inc.php');
require_once('functions.php');
// ---
// register new user
// ---
function register($username,$pass,$email,$question,$answer)
{
GLOBAL $db, $table;
$username = trim($username);
$pass = trim($pass);
$email = trim($email);
$question = addslashes(trim($question));
$answer = addslashes(trim($answer));
$validEmail = valid_email($email);
$validName = valid_userName($username);
$validPass = valid_password($pass);
if(!$validName) return "error=ungueltiger Benutzername";
if(!$validPass) return "error=ungueltiges Kennwort";
if(!$validEmail) return "error=ungueltige Email-Adresse";
$pass = md5(trim($pass));
// all checks ok
$query = @mysql_query("INSERT INTO $table (userName,userPassword,userMail,userQuestion,userAnswer,user_status) VALUES "
."('$username','$pass','$email','$question','$answer',false)");
if(!$query)
{
return "error=" . mysql_error();
} else {
return "user=ok";
echo 'Vor insert - Username = ' . $username .'Tabelle' . $table . '<=Ende';
mail("info@matteobaschera.ch","neuer user","neuer user $username registriert");
}
}
// ---
// login, check user
// ---
function login($username,$pass)
{
GLOBAL $db,$table;
$username = trim($username);
$pass = md5(trim($pass));
$query = mysql_query("SELECT * FROM $table WHERE userName = '$username' AND userPassword = '$pass' AND user_status=true");
return mysql_num_rows($query);
}
// ---
// forget password
// ---
function forget($email)
{
GLOBAL $db,$table;
$email = trim($email);
$query = mysql_query("SELECT userName, userQuestion from $table WHERE userMail = '$email'");
if(mysql_num_rows($query)<1)
{
return "error=Email wurde nicht in der Datenbank gefunden.";
}
$row = mysql_fetch_array($query);
return "userName=$row[userName]&userQuestion=" . stripslashes($row['userQuestion']);
}
// ---
// generate new password
// ---
function new_password($username,$email,$answer)
{
GLOBAL $db,$table;
$username = trim($username);
$email = trim($email);
$answer = addslashes(trim($answer));
$query = mysql_query("SELECT * FROM $table WHERE userName = '$username' AND userMail = '$email' AND userAnswer = '$answer'");
if(mysql_num_rows($query) < 1)
{
return "error=falsche Antwort";
}
$rand_string = '';
// ---
// generating a random 8 chars lenght password
// ---
for($a=0;$a<7;$a++)
{
do
{
$newrand = chr(rand(0,256));
} while(!eregi("^[a-z0-9]$",$newrand));
$rand_string .= $newrand;
}
$pwd_to_insert = md5($rand_string);
$new_query = mysql_query("UPDATE $table SET userPassword = '$pwd_to_insert' WHERE userName = '$username' AND userMail = '$email'");
if(!$new_query)
{
return "error=unable to update value";
}
return "userName=$username&new_pass=$rand_string";
}
// ---
// decisional switch
// ---
if(isset($_REQUEST["action"]))
{
switch($_REQUEST["action"])
{
case "register":
$result = register($_REQUEST['username'],$_REQUEST['pass'],$_REQUEST['email'],$_REQUEST['question'],$_REQUEST['answer']);
print $result;
break;
case "login":
$result = login($_REQUEST['username'],$_REQUEST['pass']);
print "user=" . $result;
break;
case "forget":
$result = forget($_REQUEST['email']);
print $result;
break;
case "new_password":
$result = new_password($_REQUEST['username'],$_REQUEST['email'],$_REQUEST['answer']);
print $result;
break;
}
}
?>
MAC4-EVER

Kommentar