IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Probleme avec l'utilisation de $_SESSION


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2005
    Messages
    98
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2005
    Messages : 98
    Points : 59
    Points
    59
    Par défaut Probleme avec l'utilisation de $_SESSION
    Bonjour,

    Je souhaiterai faire un formulaire de connexion avec en plus un $_SESSION pour pouvoir suivre le visiteur.

    Je vous montre le code :

    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
    <?php require_once('connexion.php'); ?>
    <?php
    if (isset($_GET['Connecter']))
    	{
    	$Identifiant = $_GET['Identifiant'];
    	$MotDePasse = $_GET['mdp'];
    	mysql_select_db($database_siterecette, $siterecette);
    	$query_Identification = "SELECT Identifiant, MotDePasse FROM Utilisateur WHERE Identifiant = '$Identifiant' AND MotDePasse = '$MotDePasse'";
    	$Identification = mysql_query($query_Identification, $siterecette) or die(mysql_error());;
    	$row_Identification= mysql_fetch_assoc($Identification);
    	if ($row_Identification['Identifiant'] == $Identifiant AND $row_Identification['MotDePasse'] == $MotDePasse)
    		{
    			echo "Connexion réussi";
    			session_start();
                $_SESSION['Identifiant'] = $_POST['Identifiant'];
                exit();
    		}
    		else
    		{
    			echo "Erreur de connexion";
    		}
    	}
    ?>
    <div id="login">
     
    	<div id="Textelogin">
     
    		<form id="FormLogin" name="FormLogin" method="get" action="menu.php">
    			<span>Nom de compte :</span><br />
    			<input type="text" name="Identifiant" /><br />
    			<span>Mot de passe :</span><br />
    			<input type="password" name="mdp" /><br />
    			<center><input type="submit" name="Connecter" value="Connecter" /></center>
    		</form>
    	</div>
     
    </div>
     
    <br />
     
    <div id="menu">
     
         <div id="textemenu">
     
         <a href="index.php">Accueil</a><br /><br />
         <a href="inscription.php">Inscription</a><br /><br />
         <a href="consultation.php">Consultation</a><br /><br />
         <a href="recherche.php">Recherche de recettes</a><br /><br />
         <a href="ajoutrecette.php">Ajout de recettes</a><br /><br />
         <a href="#">Liens</a><br /><br />
     
         </div>
     
    </div>
    Seulement j'ai ce genre d'erreur :

    Connexion réussi
    Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at C:\wamp\www\SiteRecette\menu.php:13) in C:\wamp\www\SiteRecette\menu.php on line 14

    Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at C:\wamp\www\SiteRecette\menu.php:13) in C:\wamp\www\SiteRecette\menu.php on line 14

    Warning: Unknown: Your script possibly relies on a session side-effect which existed until PHP 4.2.3. Please be advised that the session extension does not consider global variables as a source of data, unless register_globals is enabled. You can disable this functionality and this warning by setting session.bug_compat_42 or session.bug_compat_warn to off, respectively. in Unknown on line 0
    Je comprend pas tres bien, je suis débutant et j'ai un peu de mal.

    Dites moi aussi si vous voyez des trucs qui ne vont pas dans le code, je suis la pour progresser.

    Merci

  2. #2
    Membre expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Points : 3 115
    Points
    3 115
    Par défaut
    C'est dans connexion.php que tu fais ton session_start() ?
    Sinon il manque.

  3. #3
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2005
    Messages
    98
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2005
    Messages : 98
    Points : 59
    Points
    59
    Par défaut
    En effet en ajoutant le session_start() dans ma page connexion.php je n'ai plus les deux premieres erreur mais j'ai toujours la derniere.

    Y a t'il une solution ?

    Merci d'avance

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 82
    Points : 87
    Points
    87
    Par défaut
    Salut,

    je suis pratiquement aussi débutant que toi mais je pense avoir une idée sur la raison de ton problème.
    Une règle de base en matière de session est qu'il faut toujours mettre

    au tout debut de ta page.
    comme tu fait un

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    require_once('connexion.php');
    c'est donc au tout debut de cette page que tu dois placer ton code d'ouverture de session.

    Ensuite, il ne faut pas le remettre dans ta page principale à la ligne 14 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
                            echo "Connexion réussi";
    			session_start();
    il s'agit plus d'un probleme de conception de ta page que de code PHP.

    @++

Discussions similaires

  1. Probleme avec l utilisation dateval
    Par zetram dans le forum Excel
    Réponses: 6
    Dernier message: 08/07/2008, 11h58
  2. Réponses: 3
    Dernier message: 29/05/2007, 21h37
  3. Réponses: 5
    Dernier message: 01/03/2007, 19h08
  4. Problème avec l'utilisation de grep
    Par fgalves dans le forum Shell et commandes GNU
    Réponses: 5
    Dernier message: 08/11/2006, 00h49
  5. Problème avec l'utilisation de la commande system awk
    Par vbcasimir dans le forum Linux
    Réponses: 3
    Dernier message: 05/10/2004, 17h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo