Avatar billede michaeltryl Seniormester
23. september 2006 - 13:43 Der er 6 kommentarer og
1 løsning

hjælp til glemt password side

jeg er ved at lave en side som skal sende et brugernavn og password fra en database til en mail når brugeren skriver en email i en formular.
Brugernavn og email adresse kan KUN optræde en gang i databasen

jeg har nedstående kode, men selvom der skrives en email adresse i feltet som ikke findes i databasen kommer teksten med at emailen er sendt frem. jeg har siddet i omkring 1,5 time og forsøgt så håber virkelig der er en som kan se hvor fejlen er

if(isset($_POST['email'])) {
    $email = $_POST['email'];
    $email = strip_tags($email);
    $email = mysql_real_escape_string($email);
   
$tael = mysql_query("SELECT * FROM brugere WHERE email = '$email'") or die(mysql_error());
while($vis = mysql_fetch_array($tael))
{
$brugernavn = $vis[Brugernavn];
$password = $vis[Password];
$tilemail = $vis[email];
}
    if($tilemail == 0) {
   
    $emne     = "kode til vennebogen";
    $besked  = "<b>BEMÆRK DENNE MAIL ER SENDT AUTOMATISK OG KAN IKKE BESVARES</b><br><br>";
    $besked .= "Du har bedt om at få tilsendt dit brugernavn og kode til siden<br>";
    $besked .= "$side/index.html<br>";
    $besked .= "<b>Brugernavn:</b> $brugernavn<br><b>Password:</b> $password<br><br>";
    $besked .= "<a href='$side/index.html'>Login her</a>";

    $header  = "MIME-Version: 1.0" . "\r\n";
    $header .= "Content-type: text/html; charset=iso-8859-1" . "\r\n";
    $header .= "from:'vennebogen'";
    mail($tilemail, $emne, $besked, $header);
echo "<h2>Der er nu sendt en email med dit brugernavn og password</h2>";

   
    } else {
              echo "<h2>Emailen er ikke blevet sendt.</h2>";
        echo "<h3>Enten er feltet ikke udfyldt<br>";
        echo "ellers findes email adressen ikke i databasen";
    }
}
?>
Avatar billede amews_aj Nybegynder
23. september 2006 - 13:54 #1
if(isset($_POST['email'])) {
    $email = $_POST['email'];
    $email = strip_tags($email);
    $email = mysql_real_escape_string($email);
 
$tael = mysql_query("SELECT * FROM brugere WHERE email = '$email'") or die(mysql_error());
while($vis = mysql_fetch_array($tael))
{
$brugernavn = $vis[Brugernavn];
$password = $vis[Password];
$tilemail = $vis[email];
}
    if($tilemail != "") {
 
    $emne    = "kode til vennebogen";
    $besked  = "<b>BEMÆRK DENNE MAIL ER SENDT AUTOMATISK OG KAN IKKE BESVARES</b><br><br>";
    $besked .= "Du har bedt om at få tilsendt dit brugernavn og kode til siden<br>";
    $besked .= "$side/index.html<br>";
    $besked .= "<b>Brugernavn:</b> $brugernavn<br><b>Password:</b> $password<br><br>";
    $besked .= "<a href='$side/index.html'>Login her</a>";

    $header  = "MIME-Version: 1.0" . "\r\n";
    $header .= "Content-type: text/html; charset=iso-8859-1" . "\r\n";
    $header .= "from:'vennebogen'";
    mail($tilemail, $emne, $besked, $header);
echo "<h2>Der er nu sendt en email med dit brugernavn og password</h2>";

 
    } else {
              echo "<h2>Emailen er ikke blevet sendt.</h2>";
        echo "<h3>Enten er feltet ikke udfyldt<br>";
        echo "ellers findes email adressen ikke i databasen";
    }
}
?>
Avatar billede amews_aj Nybegynder
23. september 2006 - 13:55 #2
Altså jeg retter din if til: if($tilemail != "") {
Altså vis $tilemail ikke er tom, så send email.
Avatar billede amews_aj Nybegynder
23. september 2006 - 13:55 #3
hvis*
Avatar billede michaeltryl Seniormester
23. september 2006 - 14:03 #4
ja det mente jeg også jeg havde prøvet, men det havde jeg åbenbart ikke alligevel, smid et svar nu virker det
Avatar billede amews_aj Nybegynder
23. september 2006 - 14:07 #5
Svar... :)
Avatar billede yHec Novice
23. september 2006 - 14:12 #6
Man kunne også have tjekket, om db returnerer noget, når der forespørges på mailadressen.... totalrows()

/y
Avatar billede yHec Novice
23. september 2006 - 14:12 #7
VRØVL!!!!!
mysql_num_rows()
/y
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester