j'utilisais MySQL pour mon espace membre tout marché parfaitement et j'ai décider de passer au PDO, malheureusement j'ai des petit problème sur quelque ligne de codes qui génère des erreurs
J'ai modifié ma page inscription.php, et tout fonctionne bien, les informations s'enregistre dans ma base de donnée et je reçois l’émail avec mon lien pour l'activation!
Mais quand je clique sur ce lien mon compte s'active pas
Dans ma base table j'ai un champs de type " enum('0','1') " et il veut pas passer de la valeur 0 à 1, je pense c'est quand je fais ma requête préparé que ça bloque et pour récupérer les valeurs dans un tableau
Page activation-compte.php
// il y a du code avant
// Connexion à la base de données
include("include/connexionpdo.inc.php");
$query=$db->prepare('SELECT id, Compte_Active, Clef_Activation
FROM Comptes_Utilisateurs
WHERE id =:id
AND Clef_Activation =:clef');
$query->bindValue(':id',$_GET["id"], PDO::PARAM_INT);
$query->bindValue(':clef',strtolower($_GET["clef"]), PDO::PARAM_STR);
$query->execute();
// Si une erreur survient
if(!$query)
{
$message = "Une erreur est survenue lors de l'activation de votre compte utilisateur";
}
else
{
// Si aucun enregistrement n'est trouvé
if($query->rowcount() == 0)
{
header("Location: index.php");
}
else
{
// Récupération du tableau de données retourné
$row = $query->fetch(PDO::FETCH_ASSOC);
// Vérification que le compte ne soit pas déjà activé
if($row["Compte_Active"] != 0)
{
$message = "Votre compte utilisateur a déjà été activé";
}
else
{
// Activation du compte utilisateur
$query=$db->prepare('UPDATE Comptes_Utilisateurs
SET Compte_Active = :enum
WHERE id=:id
AND Clef_Activation=:clef
');
$query->bindValue(':enum', 1, PDO::PARAM_INT);
$query->bindValue(':id', $_GET["id"], PDO::PARAM_INT);
$query->bindValue(':clef', strtolower($_GET["clef"]), PDO::PARAM_STR);
$query->execute();
// Si une erreur survient
if(!$query)
{
$message = "Une erreur est survenue lors de l'activation de votre compte utilisateur";
}
else
{
$message = "Félicitation, votre compte utilisateur a été correctement activé, connectez-vous";
}
}
}
// il y a du code apres
Merci, greg
