Avatar billede jafingi Nybegynder
08. marts 2005 - 08:22 Der er 6 kommentarer

Glemt password.

Hej.
Jeg vil gerne have at der i mit community skal være en "glemt password" funktion.

Login.php:

<?
ob_start();



?>
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="style.css">
<style type="text/css">
<!--
.style1 {font-size: 10px}
-->
</style>
</head>

<body>
<form action="loggerin.php" method="post">
<table width="350" border="0" cellspacing="0" cellpadding="0">
  <tr>
   
    <td><input name="bruger" type="text" size="12" maxlength="12"  value='Brugernavn' onfocus="if(this.value=='Brugernavn')this.value='';"
                      onblur="if(this.value=='')this.value='Brugernavn';"></td>
 
    <td><input name="pass" type="password"  size="12" maxlength="12"  value='Password' onfocus="if(this.value=='Password')this.value='';"
                      onblur="if(this.value=='')this.value='Password';"></td>
 
    <td><input name="submit" type="submit" value="Login" class="bt"></td>
    <td><a href="create.html">Opret bruger</a></td><br><td><a href="glemt.php">Glemt password</a></td>
   
  </tr>
</table>
</form>

<?php
session_start();

if ($_SESSION['status'] == "nobrugerpass") {
print("    <font face='verdana' size='2' color='#ff0000'>
    <b>Du SKAL indtaste et Brugernavn OG et Password!!!</b></font>");
}

if ($_SESSION['status'] == "fejl") {
print("    <font face='verdana' size='2' color='#ff0000'>
    <b>Der var noget galt med enten dit Brugernavn
    eller dit Password!!!</b></font>");
}

if ($_SESSION['status'] == "nobruger") {
print("    <font face='verdana' size='2' color='#ff0000'>
    <b>Du SKAL indtaste et Brugernavn!!!</b></font>");
}

if ($_SESSION['status'] == "nopass") {
print("    <font face='verdana' size='2' color='#ff0000'>
    <b>Du SKAL indtaste et Password!!!</b></font>");
}
else
{
print("");
}
ob_flush();
?>
</body>
</html>

Og hvis i vil have opret.php kommer den her.

<?

$bruger = $_POST['bruger'];
$pass = $_POST['pass'];

include("access.php");
$query = "SELECT id, user, pass FROM login WHERE user = '".$bruger."'";
$result = mysql_query($query)or die("MySQL fejl: " . mysql_error());
$test = mysql_fetch_array($result);

       
if (isset($test['user'])) {
print("    <font face='verdana' size='2' color='#ff0000'>
        <b>Brugernavnet \"$bruger\" er allerede optaget
        vælg venligst et nyt </b></font><br>
        <font face='verdana' size='2' color='#000000' text-decoration='none'>
        <a href='create.html'>Tilbage</a></font>");
}
else
{


if ($HTTP_POST_FILES['userfile']['tmp_name'] && $HTTP_POST_FILES['userfile']['tmp_name'] != "none") {

$uploadfil = $HTTP_POST_FILES['userfile']['tmp_name'];
$uploadname = $HTTP_POST_FILES['userfile']['name'];
$uploadsize = $HTTP_POST_FILES['userfile']['size'];
$uploadtype = $HTTP_POST_FILES['userfile']['type'];

$ext = strtolower(end(explode(".", $HTTP_POST_FILES['userfile']['name'])));


if($ext == "jpg" || $ext == "jpeg" || $ext == "gif" || $ext == "bmp")
{

if ($uploadsize >= $upload_maxsize) {

echo "Dit billede fylder $uploadsize <br>
og må højest fylde $upload_maxsize";


}else{

$tid = time();

$nytnavn = $tid . "_" . rand(1, 1000000) . "." . $ext;


copy($HTTP_POST_FILES['userfile']['tmp_name'],"$upload_sti$nytnavn");




$query = "INSERT INTO login (id, user, pass, hjemmeside, email, alder, bopael, tlf, beskriv, billede, billednavn, filtype, oprettet, time) VALUES ('', '$bruger', '$pass', '$hjemmeside', '$email', '$alder', '$bopael', '$tlf', '$beskriv','$nytnavn','$uploadname','$ext', now(), now() )";
mysql_query($query) or die(mysql_error());

print("    <font face='verdana' size='2' color='#669900'>
        <b>    Bruger: $bruger <br>
        Password: $pass <br>
        Er nu oprettet </b></font><br>
        <font face='verdana' size='2' color='#000000' text-decoration='none'>
        <a href='../index.php'>Login</a></font>");
}


}else{
echo "din fil er ikke en godkendt fil";
}

}else{


$query = "INSERT INTO login (id, user, pass, hjemmeside, email, alder, bopael, tlf, beskriv, oprettet, time) VALUES ('', '$bruger', '$pass', '$hjemmeside', '$email', '$alder', '$bopael', '$tlf', '$beskriv', now(), now() )";
mysql_query($query) or die(mysql_error());
print("    <font face='verdana' size='2' color='#669900'>
        <b>    Bruger: $bruger <br>
        Password: $pass <br>
        Er nu oprettet </b></font><br>
        <font face='verdana' size='2' color='#000000' text-decoration='none'>
        <a href='../index.php'>Login</a></font>");
}


        }

?>

Og DUMPet til min database:

CREATE TABLE login (
id  int(11) auto_increment             
  user  text                   
  pass  text                   
  hjemmeside  varchar(100)                   
  email  varchar(50)                   
  alder  varchar(50)                   
  bopael  text                   
  tlf  varchar(10)                   
  beskriv  text  Nej                 
  billede  varchar(100)                   
  billednavn  varchar(250)                   
  filtype  varchar(10)                   
  tid  datetime 0000-00-00 00:00:00               
  time  datetime 0000-00-00 00:00:00               
  foerst  datetime 0000-00-00 00:00:00               
  sidst  datetime 0000-00-00 00:00:00               
  color  varchar(8)                   
  status  varchar(10)                 
PRIMARY KEY (id)
) TYPE=MyISAM;


Jeg vil gerne have sådan at de kan gå ind at skrive deres email, og trykke "ok" og så bliver der sendt en mail med bruger oplysninger (Brugernavn, Password).

Hvis i mangler flere filer siger i bare til :)

Håber i vil hjælpe mig!

Mvh. Elias
Avatar billede domaz.dk Novice
08. marts 2005 - 08:40 #1
det gik lige lidt stærkt... så hvis der er nogle fejl må du lige sige til...
Du skal lige huske selv at connecte til din database...


// glemt.php

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>

<b>glemt password</b><br>
<form action="<?php echo $PHP_SELF; ?>" method="post">
E-mail:<br>
<input type="text" name="email"><br>
<input type="submit" value="Send password" name="send">
</form>

<?php
if ($send) {
    if (empty($email)) {
        echo "You have to write your E-mail!\n";
        $wrong = 1;
    }
   
    if ($wrong != 1) {
        $query = "SELECT id, user, pass FROM login WHERE user = '".$email."'";
        if (mysql_num_rows(mysql_query($query))) {
            $result = mysql_query($query)or die("MySQL fejl: " . mysql_error());
            mail("$email", "Bruger oplysninger til \"dit community\"", "Brugernavn: ".$result['user']."<br>Password: ".$result['pass']."<br><br>Mvh. \"din hjemmesides\" Crew, "From: $email\nX-Mailer: http://$HTTP_HOST$REQUEST_URI");
            echo "Dit brugernavn og password er blevet sendt til din email!\n";
        } else {
            echo "Din email ($email) eksisterer ikke i vores community!";
        }
    }
}
?>

</body>
</html>
Avatar billede jakobdo Ekspert
08. marts 2005 - 08:43 #2
Du kunne lave det nemt sådan her:

<?
//GlemtPass.php

$email = $_POST['email'];

if(isset($_POST['sendPass']))
{
    $query = mysql_select("SELECT user,pass FROM login WHERE email LIKE '" . $email . "' LIMIT 1");
    if(mysql_num_rows($query) > 0)
    {
        $row = mysql_fetch_assoc($query);
       
        $message = "Dit brugernavn er: " . $row['user'] . "\r\n";
        $message .= "Dit kodeord er: " . $row['pass'] . "\r\n\r\n";
        $message .= "Venlig Hilsen Mig...";
       
        mail($email, "Brugernavn + Login", $message,
    "From: webmaster@{$_SERVER['SERVER_NAME']}\r\n" .
    "Reply-To: webmaster@{$_SERVER['SERVER_NAME']}\r\n" .
    "X-Mailer: PHP/" . phpversion());
    }
    else
        echo "Emailen er ikke registreret i vores system";
}
else
{

echo "<form action=\"" . $_SERVER['PHP_SELF'] . "\" method=\"POST\">";
echo "Email:<input type=\"text\" name=\"email\">";
echo "<input type=\"submit\" name=\"sendPass\" value=\"Send Nyt Password\">";
echo "</form>";

}
Avatar billede domaz.dk Novice
08. marts 2005 - 08:50 #3
rettet...

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>

<b>glemt password</b><br>
<form action="<?php echo $PHP_SELF; ?>" method="post">
E-mail:<br>
<input type="text" name="email"><br>
<input type="submit" value="Send password" name="send">
</form>

<?php
if ($send) {
    if (empty($email)) {
        echo "You have to write your E-mail!\n";
        $wrong = 1;
    }
   
    if ($wrong != 1) {
        $query = "SELECT id, user, pass FROM login WHERE user = '".$email."'";
        if (mysql_num_rows(mysql_query($query))) {
            $result = mysql_query($query)or die("MySQL fejl: " . mysql_error());
            mail("$email", "Bruger oplysninger til \"dit community\"", "Brugernavn: ".$result['user']."<br>Password: ".$result['pass']."<br><br>Mvh. \"din hjemmesides\" Crew", "From: $email\nX-Mailer: http://$HTTP_HOST$REQUEST_URI");
            echo "Dit brugernavn og password er blevet sendt til din email!\n";
        } else {
            echo "Din email ($email) eksisterer ikke i vores community!";
        }
    }
}
?>

</body>
</html>
Avatar billede jafingi Nybegynder
08. marts 2005 - 15:19 #4
Ja, Nu når jeg har tænkt mig om, kunne jeg godt tænke mig at de skal komme ind på en side, og sige om de kan huske hvad deres brugernavn er, eller om de ikke kan huske det. hvis de klikker på at de ikke kan huske brugernavn popper der en boks op(ikke et helt vindue) hvor de skal skrive deres email, og så får de en mail med deres brugernavn. hvis de kan huske brugernavn er det bare med at man skal skrive brugernavn og så får man en email.

i får også lige min acces.php:

<?PHP
mysql_connect("localhost", "bruger", "******");
mysql_select_db("database");
$upload_sti = "billeder/";
$upload_maxsize = "51500";
?>

Håber den kan bruges
Avatar billede jakobdo Ekspert
08. marts 2005 - 19:04 #5
Du kunne evt stadig lave begge ting i en boks:

<?
//GlemtPass.php

$glemt = $_POST['glemt'];

if(isset($_POST['sendPass']))
{
    $query = mysql_select("SELECT user,pass FROM login WHERE email LIKE '" . $email . "' OR user LIKE '" . $email . "' LIMIT 1");
    if(mysql_num_rows($query) > 0)
    {
        $row = mysql_fetch_assoc($query);
     
        $message = "Dit brugernavn er: " . $row['user'] . "\r\n";
        $message .= "Dit kodeord er: " . $row['pass'] . "\r\n\r\n";
        $message .= "Venlig Hilsen Mig...";
     
        mail($email, "Brugernavn + Login", $message,
    "From: webmaster@{$_SERVER['SERVER_NAME']}\r\n" .
    "Reply-To: webmaster@{$_SERVER['SERVER_NAME']}\r\n" .
    "X-Mailer: PHP/" . phpversion());
    }
    else
        echo "Emailen er ikke registreret i vores system";
}
else
{
echo "<h1>Har du flemt dit password?</h1>";
echo "<form action=\"" . $_SERVER['PHP_SELF'] . "\" method=\"POST\">";
echo "Brugernavn/Email:<input type=\"text\" name=\"glemt\">";
echo "<input type=\"submit\" name=\"sendPass\" value=\"Send Nyt Password\">";
echo "</form>";

}
Avatar billede jakobdo Ekspert
08. marts 2005 - 19:04 #6
PS: Husk include("connect.php");
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