Utiliser variable dans formulaire
Posté : 06 déc. 2023, 19:53
Bonjour à tous,
Je but sur un truc tout bête je pense.
Je suis entrain de faire une page de déblocage de compte client.
La personne recoit un mail, a partir de ce mail cela la renvoie sur le site pour réactiver son compte.
Dans url il y a un token pour retrouver le compte.
Par rapport a ce token il y a certain controle et une fois les controle fait je valide un formulaire ou l'utilisateur met son mail afin de voir si il correspond a celui du token.
Le soucis je ne parviens pas a utiliser les variables dans mon formulaire, alors qu'avant le formulaire j'arrive a les manipulées.
J'ai essayer d'utiliser les sessions mais cela ne fonctionne pas.
Pourriez-vous m'aider ?
J'utilise l'architecture MVC.
Quand j'envoie mon formulaire la le vardump me renvois null alors qu'avant le formulaire le vardump fonctionne et me renvoi les bonnes infos.
Merci par avance pour votre aide.
@+ Filou
Je but sur un truc tout bête je pense.
Je suis entrain de faire une page de déblocage de compte client.
La personne recoit un mail, a partir de ce mail cela la renvoie sur le site pour réactiver son compte.
Dans url il y a un token pour retrouver le compte.
Par rapport a ce token il y a certain controle et une fois les controle fait je valide un formulaire ou l'utilisateur met son mail afin de voir si il correspond a celui du token.
Le soucis je ne parviens pas a utiliser les variables dans mon formulaire, alors qu'avant le formulaire j'arrive a les manipulées.
J'ai essayer d'utiliser les sessions mais cela ne fonctionne pas.
Pourriez-vous m'aider ?
J'utilise l'architecture MVC.
Code : Tout sélectionner
<?php
session_start(); // initialise la session
require_once(dirname(__FILE__).'/../Configuration/config.php');
require_once(dirname(__FILE__) . '/../Modeles/Utilisateur.php');
//Fichier pour envoi de mail en local et en prod
require_once(dirname(__FILE__).'/../Public/Utiles/phpmailer.php');
$code = '';
$controleRole = 6;
// var_dump($controleRole);
// exit;
// compte debloquer code 71
// Recuperer le token envoyer par mail
$tokenMail = filter_input(INPUT_GET, 'token', FILTER_SANITIZE_STRING);
// var_dump($tokenMail);
// exit;
// Enlever le code de securite brut 13A5 Supprimer les 4 derniers caractères
$tokenMailSansCode = substr($tokenMail, 0, -4);
// var_dump($tokenMailSansCode);
// exit;
// Vérifier si le token existe dans la table des utilisateurs
$utilisateur = Utilisateurs::getUtilisateurByToken($tokenMailSansCode);
if ($utilisateur) {
// Récupérer la propriété IdRole associée au token
$idRole = $utilisateur->getIdRole();
// var_dump($idRole);
// exit;
// Vérifier différentes conditions pour définir la variable $code
if ($idRole > $controleRole) {
// IdRole est supérieur à $controleRole
$code = '4';
} elseif ($idRole >= 1 && $idRole <= 5) {
// IdRole est compris entre 1 et 5 inclus
$code = '27';
// Vous pouvez ajouter d'autres actions à effectuer ici
} else {
// Autres cas si =6
$code = '';
}
} else {
// Le token n'existe pas dans la table des utilisateurs
$code = '4';
// echo "Token non valide.";
}
if ($utilisateur) {
// Récupérer l'adresse e-mail associée au token
$adresseMail = $utilisateur->getMail();
// Faire quelque chose avec l'adresse e-mail récupérée
// echo "Adresse e-mail associée au token : " . $adresseMail;
} else {
// Le token n'existe pas dans la table des utilisateurs
// echo "Token non valide.";
}
// var_dump($adresseMail);
// exit;
// // Initialiser les variables de session
// $_SESSION['tokenMail'] = $tokenMail;
// $_SESSION['tokenMailSansCode'] = $tokenMailSansCode;
// $_SESSION['utilisateur'] = $utilisateur;
// // Vérifiez si les variables de session existent
// $tokenMailSession = isset($_SESSION['tokenMail']) ? $_SESSION['tokenMail'] : null;
// $tokenMailSansCodeSession = isset($_SESSION['tokenMailSansCode']) ? $_SESSION['tokenMailSansCode'] : null;
// $utilisateurSession = isset($_SESSION['utilisateur']) ? $_SESSION['utilisateur'] : null;
// // Nettoyez les variables si nécessaire
// $tokenMailSession = filter_var($tokenMailSession, FILTER_SANITIZE_STRING);
// $tokenMailSansCodeSession = filter_var($tokenMailSansCodeSession, FILTER_SANITIZE_STRING);
// Faire la suite
// On vérifie que le formulaire est envoyé
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
var_dump($idRole);
exit;
// Utilisez les variables de session pour le traitement du formulaire
//var_dump($_SESSION['idRoleBase']);
// var_dump($tokenMailSansCode);
var_dump($_SESSION['idRoleBase']); // Ajoutez cette ligne pour utiliser la variable de session
exit;
// Enlever le code de securite brut 13A5 Supprimer les 4 derniers caractères
$tokenMailSansCode = substr($tokenMail, 0, -4);
var_dump($tokenMailSansCode);
exit;
// Vérifier si le token existe dans la table des utilisateurs
$utilisateur = Utilisateurs::getUtilisateurByToken($tokenMailSansCode);
$adresseMail = strtolower($utilisateur->getMail());
//Mail Nettoyage et validation
$mailEnvoye = strtolower(trim(filter_input(INPUT_POST, 'mail', FILTER_SANITIZE_STRING)));
var_dump($adresseMail);
var_dump($mailEnvoye);
exit;
// Vérifier si $adresseMail est identique à $mailEnvoye
if ($adresseMail === $mailEnvoye) {
// Faire quelque chose car les adresses e-mail sont identiques
// ...
} else {
// Les adresses e-mail ne sont pas identiques, gérer cela si nécessaire
// ...
}
}
include(dirname(__FILE__).'/../Vues/deblocageCompte.php');
Merci par avance pour votre aide.
@+ Filou