88 lines
3.3 KiB
PHP
88 lines
3.3 KiB
PHP
<?php
|
|
#Datenbank Verbindung einbinden
|
|
require 'Connections/Connections.php';
|
|
#PHPMailer einbinden
|
|
require './PHPMailer/class.phpmailer.php';
|
|
|
|
#Deklaration der Website Namens
|
|
$website=$_SERVER['HTTP_HOST'];
|
|
$weburl="https://".$_SERVER['HTTP_HOST']."";
|
|
|
|
#Prüfen ob der Button Register gedrückt wurde
|
|
if(isset($_POST['Password_reset'])){
|
|
session_name('wportal');
|
|
session_start();
|
|
#Zuweißung von Post (Fromular Variablen) zu Normalen Variablen für SQL Statements
|
|
$Email = $_POST['Email'];
|
|
$hash = md5(uniqid(rand(), true));
|
|
$verified_email = $con->query("select * from user where email = '$Email' and isactive = 1");
|
|
#Prüfen ob E-mail (user) registriert ist
|
|
if (mysqli_num_rows($verified_email)==1) {
|
|
$update_hash = $con->query("update user set hash='{$hash}' where email = '$Email' and isactive = 1");
|
|
if(isset($_SESSION['captcha_spam']) AND $_POST["sicherheitscode"] == $_SESSION['captcha_spam']){
|
|
unset($_SESSION['captcha_spam']);
|
|
#url für passwort zurücksetzen zusammenbauen
|
|
$url= "$weburl/verify_passwort.php?email=".urlencode($Email)."&key=$hash";
|
|
#Mail zusammenbauen
|
|
$mail = new PHPMailer();
|
|
$mail->CharSet = "UTF-8";
|
|
$mail->isHTML(true);
|
|
$mail->setFrom("admin@$website", "Waiswuaschd Admin");
|
|
$mail->Subject = "Zurücksetzen ihres Passwortes";
|
|
$mail->AddAddress("$Email");
|
|
$mail->Body = '<p>Sie haben ein neues Passwort angefordert. Klicken sie auf den Link um ihr Passwort zurückzusetzen.</p><a href="'.$url.'">Passwort Zurücksetzen</a>';
|
|
#mail verschicken und prüfen ob sie verschickt wurde
|
|
if(!$mail->send()) {
|
|
print "<script type='text/javascript' langeuage='javascript'>
|
|
alert('E-Mail konnte nicht verschickt werden.');
|
|
window.location = 'forgot_password.php';</script>";
|
|
} else {
|
|
print "<script type='text/javascript' langeuage='javascript'>
|
|
alert('Bitte überprüfen sie ihren Posteingang');
|
|
window.location = 'Login.php';</script>";
|
|
}
|
|
}else{
|
|
die ( "<script type='text/javascript' langeuage='javascript'>
|
|
alert('Sicherheitscode falsch eingegeben!');
|
|
window.location = 'forgot_password.php';</script>");
|
|
}
|
|
}else{
|
|
die( "<script type='text/javascript' langeuage='javascript'>
|
|
alert('E-Mail nicht gefunden? Vertippt?');
|
|
window.location = 'forgot_password.php';</script>");
|
|
}
|
|
}
|
|
|
|
#Header und menü einbinden
|
|
$webpagetitle = "Password vergessen?";
|
|
include "Includes/Header.php";
|
|
include "Includes/Menu.php";
|
|
#html Content ausgeben
|
|
?>
|
|
<div class="content">
|
|
<div class="Rahmen">
|
|
<div class="center">
|
|
<form action="" method="post" name="Password_reset" id="Password_reset">
|
|
<div class="FormElement">
|
|
<input name="Email" type="email" required="required" class="TField" id="Email" placeholder="Email">
|
|
</div>
|
|
<div class="FormElement">
|
|
<img src="Captcha/Captcha.php" border="0" title="Sicherheitscode">
|
|
</div>
|
|
<p>Bitte Sicherheitscode eingeben:</p>
|
|
<div class="FormElement">
|
|
<input type="text" name="sicherheitscode" required="required" size="5" class="CField">
|
|
</div>
|
|
<div class="FormElement">
|
|
<input name="Password_reset" type="submit" class="button" id="Password_reset" Value="Zurücksetzen">
|
|
</div>
|
|
</form>
|
|
<br />
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<?php
|
|
#Footer einbinden
|
|
include "Includes/Footer.php";
|
|
?>
|