Précédent   Forum des professionnels en informatique > PHP > Langage > Sessions
Sessions Forum d'entraide sur les sessions avec PHP. Avant de poster -> FAQ sessions, Cours sessions et Sources sécurité
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 06/09/2011, 11h04   #1
Invité de passage
 
Homme
Inscription : septembre 2011
Messages : 7
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : septembre 2011
Messages : 7
Points : 0
Points : 0
Par défaut probleme de sessions

bonjour je débute en php et j'ai crée un espace membre a l'aide de tuto ! voila ma question comment crée des sessions ? je vous passe mon code de la page connection
Code :
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
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
   <head>
       <title>Connection</title>
       <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
	   <link rel="stylesheet" media="screen" type="text/css" title="Design" href="design.css" />
   </head>
   <body>
    <div id="en_tete">
     <!-- Ici on mettra la bannière -->
    </div>
 
    <div id="menu">
 
    <div class="element_menu">
     <?php // Enregistrons les informations de date dans des variables
      $jour = date('d');
      $mois = date('m');
      $annee = date('Y');
 
      $heure = date('H');
      $minute = date('i'); // Maintenant on peut afficher ce qu'on a recueilli
      echo 'Bonjour ! Nous sommes le ' . $jour . '/' . $mois . '/' . $annee . 'et il est ' . $heure. ' h ' . $minute;
     ?>
 
    </div>
 
    <div class="element_menu">
       <h3></h3>
       <ul>
           <li><a href="index.php">Acceuil</a></li>
           <li><a href="inscri.php">Inscription</a></li>
           <li><a href="liens.php">Liens</a></li>
       </ul>
    </div>
 
    </div>
 
	<?php
 
// Redirige l'utilisateur s'il est déjà identifié
if(isset($_COOKIE["ID"]))
{
     header("Location: index.php");
}
else
{
 
     // Formulaire visible par défaut
     $masquer_formulaire = false;
 
     // Une fois le formulaire envoyé
     if(isset($_POST["BT_Envoyer"]))
     {
 
          // Vérification de la validité des champs
          if(!mb_ereg("^[A-Za-z0-9_]{4,20}$", $_POST["TB_Pseudo"]))
          {
               $message = "Votre pseudo doit comporter entre 4 et 20 caractères<br />\n";
               $message .= "L'utilisation de l'underscore est autorisée";
          }
          elseif(!mb_ereg("^[A-Za-z0-9]{6,}$", $_POST["TB_Pass"]))
          {
               $message = "Votre mot de passe doit comporter au moins 6 caractères";
          }
          else
          {
 
               // Connexion à la base de données
               // Valeurs à modifier selon vos paramètres configuration
               mysql_connect("localhost", "root", "");
               mysql_select_db("siteaimemoi");
 
               // Sélection de l'utilisateur concerné
               $result = mysql_query("
                    SELECT ID, Pseudo, Pass, Compte_Active
                    FROM membres
                    WHERE Pseudo = '" . $_POST["TB_Pseudo"] . "'
               ");
 
               // Si une erreur survient
               if(!$result)
               {
                    $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)
                    {
                         $message = "Le pseudo" . $_POST["TB_Pseudo"] . " 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)
                         {
                              $message = "Votre compte n'a pas été activé";
                         }
                         else
                         {
 
                              // Vérification du mot de passe
                              if(md5($_POST["TB_Pass"]) != $row["pass"])
                              {
                                   $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", $row["ID"], $expiration, "/");
                                   setcookie("Pseudo", $row["Pseudo"], $expiration, "/");
 
                                   // Fermeture de la connexion à la base de données
                                   mysql_close();
 
                                   // Redirection de l'utilisateur
                                   header("Location: membre.php");
 
                              }
 
                         }
 
                    }
 
               }
 
               // Fermeture de la connexion à la base de données
               mysql_close();
 
          }
 
     }
 
}
 
?>
quelqu'un pourrais il m'aider svp ?
xxxcite est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/09/2011, 16h32   #2
Membre régulier
 
Avatar de diallomad
 
Homme .M DIALLO
Étudiant
Inscription : avril 2009
Messages : 47
Détails du profil
Informations personnelles :
Nom : Homme .M DIALLO
Âge : 23
Localisation : Mali

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : avril 2009
Messages : 47
Points : 92
Points : 92
Citation:
Envoyé par xxxcite Voir le message
voila ma question comment crée des sessions ?
Il y a trois tutos rien que pour les sessions sur developpez.com, c'est pas un long chapitre, mais c'est hyper important.
http://php.developpez.com/cours/?page=securite#sessions
Bonne continuation !
__________________
L'erreur est facile à tous; plus facile peut-être à celui qui croit beaucoup savoir.
diallomad est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/09/2011, 17h47   #3
Membre Expert
 
Avatar de kdmbella
 
Homme Demazy Mbella
Développeur Web
Inscription : août 2010
Messages : 620
Détails du profil
Informations personnelles :
Nom : Homme Demazy Mbella
Localisation : Cameroun

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : août 2010
Messages : 620
Points : 1 470
Points : 1 470
tu peux aussi regarder la documentation de php
pour avoir une description plus détaillées des ffonctions du tuto
http://www.php.net/manual/fr/book.session.php
__________________
Trois personnes peuvent garder un secret si deux d'entre elles sont mortes. :Benjamin Franklin
L'humanité se divise en trois catégories : ceux qui ne peuvent pas bouger, ceux qui peuvent bouger, et ceux qui bougent : Benjamin Franklin
Le hasard, c'est le déguisement que prend Dieu pour voyager incognito: Albert Einstein
bon je m'arrête là au risque de me faire buter
kdmbella est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/09/2011, 22h55   #4
Membre Expert
 
Inscription : septembre 2010
Messages : 1 242
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 1 242
Points : 1 564
Points : 1 564
Pour info au passage, tu peux déclarer une ouverture de session comme ceci :
Code :
if (!session_id()) session_start();
Cela évite des conflits si tu inclus des scripts qui eux mêmes déclarent des ouvertures de session.
__________________
- Réalisations
- Interface graphique : génération en javascript d'objets défilants, texte et/ou images, mode horizontal ou vertical.
ABCIWEB est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h53.


 
 
 
 
Partenaires

Hébergement Web