set loggedin to false
$_SESSION["loggedin"] === false;
if(empty($confirmation_err) ){
// Prepare a select statement
$sql = "SELECT userStatus, userLastname, userFirstname FROM User WHERE userToken = ?";
if($stmt = mysqli_prepare($link, $sql)){
// Bind variables to the prepared statement as parameters
mysqli_stmt_bind_param($stmt, "s", $param_token);
// Set parameters
$param_token = $_GET['token'];
// Attempt to execute the prepared statement
if(mysqli_stmt_execute($stmt)){
// Store result
mysqli_stmt_store_result($stmt);
// Check if token exists.
// echo mysqli_stmt_num_rows($stmt) ; exit;
if($num=mysqli_stmt_num_rows($stmt) == 1){
// Bind result variables
mysqli_stmt_bind_result($stmt, $status, $lastname, $firstname);
// echo $status ." - " .$lastname ." - " .$firstname ."\n"; exit;
if(mysqli_stmt_fetch($stmt)){
if($status == 0){
// Account is already confirmed
$confirmation_err = "Benutzerkonto ist bereits freigeschaltet.";
} else {
// token available in database and status != 0
// update status and set token to '';
$sql = "UPDATE User set userStatus = 0, userToken = '' where userToken = ?";
if($stmt = mysqli_prepare($link, $sql)){
// Bind variables to the prepared statement as parameters
mysqli_stmt_bind_param($stmt, "s", $param_token);
// Attempt to execute the prepared statement
if(! mysqli_stmt_execute($stmt)){
$confirmation_err= "
Oops! Da ging etwas schief. Bitte versuchen Sie es später noch einmal.
Es wurde kein Datensatz für eine Freischaltung gefunden.
Das kann an der Verwendung einer alten Freischaltungs-Email liegen, bei der der verwendete Token bereits verwendet wurde oder aber an einem Fehler auf unserer Seite.
Bei Fragen wenden Sie sich bitte über unser Kontaktformular an das Team des VET Repository.