Zur Navigation

vergessene logindaten per mail zugeschickt bekommen [3]

21 andehrl

ok, jetzt funktioniert es. danke dir vielmals :-)

02.11.2010 21:34

22 andehrl

jetzt hab ich doch noch ein problem.
wenn ein nutzer sich bei der eingabe seiner mailadresse zb vertippt, oder, da er mehrere adressen hat, irtümlicher weise eine email in das feld eingibt, die er zur registrierung gar nicht verwendet hat, wird er trotzdem auf die folgeseite weitergeleitet und bekommt einen text angezeigt der ihn glauben lässt er bekäme nun eine mail mit seinen zugangsdate zugeschickt.
kann ich in den code hier eine prüfung einbauen, ob die eingegebene mailadresse in der datenbank überhaupt existiert? und wenn nicht, das dann auf der seite eine fehlermeldung angezeigt wird, so das der user erneut eine adresse eingeben kann?

mysql_select_db($database_Registrierung, $Registrierung);
$query_R2 = "SELECT nutzername, passwort, mail FROM login WHERE mail = 'mail'";
$R2 = mysql_query($query_R2, $Registrierung) or die(mysql_error());
$row_R2 = mysql_fetch_assoc($R2);
$totalRows_R2 = mysql_num_rows($R2);
?>

03.11.2010 11:51

23 Jörg Kruse

$query_R2 = "SELECT nutzername, passwort, mail FROM login WHERE mail = 'mail'";

Mit der Query wirst du das nicht prüfen können (siehe Beitrag 8)

03.11.2010 12:49

24 andehrl

ok, dann auf der "ausgabeseit", aber wie?

$colname_R2 = "-1";
if (isset($_POST['mail'])) {
  $colname_R2 = $_POST['mail'];
}
mysql_select_db($database_Registrierung, $Registrierung);
$query_R2 = sprintf("SELECT nutzername, passwort, mail FROM login WHERE mail = %s", GetSQLValueString($colname_R2, "text"));
$R2 = mysql_query($query_R2, $Registrierung) or die(mysql_error());
$row_R2 = mysql_fetch_assoc($R2);
$totalRows_R2 = mysql_num_rows($R2);
$empfaenger = $row_R2['mail'];
$betreff = 'mit-umzug-gelegenheit.de Zugangsdaten';
$nachricht = "Sie erhalten hier Ihre Zugangsdaten um sich bei mit-umzug-gelegenheit.de in Ihr Konto einzuloggen:
nutzername: " . $row_R2['nutzername'] . ",     passwort: " . $row_R2['passwort'];
$header = 'From: info@mit-umzug-gelegenheit.de ' . "\r\n" .
    'Reply-To: info@mit-umzug-gelegenheit.de ' . "\r\n" .
    'X-Mailer: PHP/' . phpversion();

mail($empfaenger, $betreff, $nachricht, $header);
?>

03.11.2010 14:32

25 Jörg Kruse

mysql_num_rows($R2) gibt hier die Anzahl der zurückgegebenen Datensätze wieder. Wenn diese größer Null ist, existiert die Adresse. Du kannst die Email abhängig von einer entsprechenden Bedingung versenden:

$totalRows_R2 = mysql_num_rows($R2);
if ($totalRows_R2 > 0) {
    // Email versenden
}

03.11.2010 14:54 | geändert: 03.11.2010 14:54

26 andehrl

und wie muss dann die "else-anweisung" aussehen, damit dem user ein entsprechender hinweistext wie zb. "diese adresse ist in unserer datenbank nicht vorhanden" angezeigt wird ... am besten auf der seite auf der der nutzer die mail-adresse eingetragen hat?

03.11.2010 15:13

27 Jörg Kruse

Du hast unten doch einen HTML-Teil - da kannst du eine weitere if / else Konstruktion für die Meldungen einbauen

<?php
if ($totalRows_R2 > 0) {
   echo 'Die E-Mail mit den Logindaten wurde abgesendet.';
} else {
   echo 'Die angegebene E-Mailadresse ' . $row_R2['mail'] . ' gibt es nicht.';
}
?>

03.11.2010 16:46

28 andehrl

super, danke nochmal :-)

03.11.2010 17:18

Beitrag schreiben (als Gast)

Die Antwort wird nach der Überprüfung durch einen Moderator freigeschaltet.





[BBCode-Hilfe]