segunda-feira, 6 de junho de 2022

admin/usernameChangeValidation.php

<?php

# admin/usernameChangeValidation.php

require_once("restrictAccessToPage.php"); # $con, variável de conexão

require_once("connection.php"); # $con, variável de conexão

$token = $_GET['token'];

$idUsername = $_GET['idUsername'];

$username = $_GET['username'];


$sql="SELECT idUsername, TIMESTAMPDIFF(minute, dateReg, now()) AS minutos FROM token WHERE TIMESTAMPDIFF(minute, dateReg, now()) > 60";

$queryToken=mysqli_query($con, $sql) or die ($sql);

$totalToken=mysqli_num_rows($queryToken);

if($totalToken>0) {

    while($fetchToken=mysqli_fetch_assoc($queryToken)) {

        $idUsername=$fetchToken['idUsername'];

        $sql="CALL delete_token ($idUsername)";

        mysqli_query($con, $sql);

    }

}


$sql="SELECT idUsername FROM token  WHERE token = '$token' AND idUsername =$idUsername";

$query=mysqli_query($con, $sql) or die($sql);

$total=mysqli_num_rows($query);


if($total==1){

    $fetch=mysqli_fetch_assoc($query); # para aceder ao idUsername

    # sucesso: Vou alterar o estado do username e apagar o token

    $path="usernameChange.php?usernameAlterado";

    $sql="UPDATE username SET username = '$username' WHERE idUsername = $idUsername";   

    mysqli_query($con, $sql) or die($sql);

    $sql="DELETE FROM token WHERE token = '$token' AND idUsername =$idUsername";

    mysqli_query($con, $sql) or die($sql);

    $_SESSION['username']=$username;



} else {

    # fracasso: vou passar um parametro de token

    $path="usernameChange.php?semToken";

}

header("Location:$path");

?>

Sem comentários:

Enviar um comentário