God kveld folkens.
Jeg orker ikke lage en ny tråd for å slippe å lage unødvendig mange tråder i forumet.
Har nå tatt tipset og prøvd meg litt på PDO.
Jeg hiver meg bare ut i det og prøver meg fram egentlig. Beste måten å lære på syns jeg.
Nå har jeg da laget 3 scripts. Har ikke gått igjennom alle enda, da den første må gå igjennom først før jeg kan gjøre mer.
Scriptene jeg lager nå er som følger:
send_password_link.php
very_token.php
update_new_password.php
Den første, send_password_link.php ser sånn her ut:
Kode
<?php
error_reporting(E_ALL); ini_set('display_errors', 1);
$servername = "localhost";
$username = "*****";
$password = "****";
$dbname = "*****";
$pdo = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
$email = isset($_POST['email']) ? trim($_POST['email']) : '';
$sql = "SELECT 'id', 'email' FROM 'login' WHERE 'email' = :email";
$statement = $pdo->prepare($sql);
$statement->bindValue(':email', $email);
$statement->execute();
$userInfo = $statement->fetch(PDO::FETCH_ASSOC);
if(empty($userInfo)) {
echo "That email address was not found in our system!";
exit;
}
$userEmail = $userInfo['email'];
$userId = $userInfo['id'];
$token = openssl_random_pseudo_bytes(16);
$token = bin2hex($token);
$insertSql = "INSERT INTO password_reset_request (user_id, date_requested, token) VALUES (:user_id, :date_requested, :token)";
$statement = $pdo->prepare($insertSql);
$statement->execute(array(
"user_id" => $userId,
"date_requested" => date('Y-m-d H:i:s'),
"token" => $token
));
$passwordRequestId = $pdo->lastInsertId();
$verifyScript = "http://URL/verify_token.php";
$linkToSend = $verifyScript . '?uid=' . $userId . '&id=' . $passwordRequestId . '&t=' . $token;
$to = $userInfo['email'];
$subject = "Reset password link (NAME)";
$message = "Here is your link to reset your password <br> If you did not request a new password, disregard this email and consider changing your password <br><br> Link: " . $linkToSend . " ";
$headers = "From: *email*";
$retval = mail($to, $subject, $message, $headers);
?>
Denne koden går ikke igjennom min første IF statement her. Den klarer ikke å hente / sjekke eposten.
Virker som det er flinke personer her med PDO kunnskap, så da tenkte jeg at jeg nå kan hente litt kunnskap om PDO her.
Sist endret av Nikon01; 9. mai 2019 kl. 20:59.