J'ai un peu de mal a me faire comprendre ^^.
L'idee n'est pas de coller des die($expiration); partout mais de tester tes variables au fur et a mesure que le script s'execute. Pour cela on utilise la commande echo, non bloquante, qui affiche une phrase a un passage precis du script, par exemple :
De cette facon, tu as une idee precise du moment ou ton script te pose une soucis.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 $maVariable = "keaton7"; // pour le dbug echo $maVariable; ucfirst($maVariable); // pour le dbug echo $maVariable; // etc ...
Le probleme dans ton cas, c'est que tu utilises des redirections. Donc, un echo ne servira a rien puisque en bout de course, tu rediriges (avec le header) vers index.php. Moralite, tu auras TOUJOURS index.php qui s'affichera a la place de tes echo ET DE TES ERREURS.
Pour pallier a cela, je te propose soit de mettre momentanement en commentaire tes redirections :
OU
Code : Sélectionner tout - Visualiser dans une fenêtre à part // header("location : index.php");
D'utiliser die(); a la place des echos successivement, par exemple :
Dans ton script, la logique des echos sans redirection, ça donnerai ça par exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 $maVariable = "keaton7"; // pour le dbug die($maVariable); ucfirst($maVariable); // pour le dbug //die($maVariable); // etc ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97 <?php // Redirige l'utilisateur s'il est déjà identifié if(isset($_COOKIE["ID_UTILISATEUR"])) { echo "Le cookie existe<br />"; //header("Location: index.php"); } else { // Connexion à la base de données // Valeurs à modifier selon vos paramètres configuration mysql_connect("localhost", "root", ""); mysql_select_db("user"); // Sélection de l'utilisateur concerné $result = mysql_query(" SELECT ID_Utilisateur, Nom_Utilisateur, Mot_de_Passe, Compte_Active FROM Comptes_Utilisateurs WHERE Nom_Utilisateur = '" . $_POST["TB_Nom_Utilisateur"] . "' "); // Si une erreur survient if(!$result) { echo "Erreur de connexion<br />"; $message = "Une erreur est survenue lors de la tentative de connexion"; } else { // Si aucun utilisateur n'a été trouvé if(mysql_num_rows($result) == 0) { echo "Utilisateur inexistant<br />"; $message = "Le nom d'utilisateur " . $_POST["TB_Nom_Utilisateur"] . " n'existe pas"; } else { // Récupération des données $row = mysql_fetch_array($result); // Si le compte n'a pas été activé if($row["Compte_Active"] == 0) { echo "Compte inactif<br />"; $message = "Votre compte utilisateur n'a pas été activé"; } else { // Vérification du mot de passe if(md5($_POST["TB_Mot_de_Passe"]) != $row["Mot_de_Passe"]) { echo "Mauvais password<br />"; $message = "Votre mot de passe est incorrect"; } else { // Définition du temps d'expiration des cookies $expiration = empty($_POST["CB_Connexion_Automatique"]) ? 0 : time() + 90 * 24 * 60 * 60; // Création des cookies setcookie("ID_UTILISATEUR", $row["ID_Utilisateur"], $expiration, "/"); setcookie("NOM_UTILISATEUR", $row["Nom_Utilisateur"], $expiration, "/"); // Fermeture de la connexion à la base de données mysql_close(); // Redirection de l'utilisateur //header("Location: index.php"); echo "Fin du script : reussite<br />"; } } } } // Fermeture de la connexion à la base de données mysql_close(); } } } ?>
Partager