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 :

Session et PHP5


Sujet :

Langage PHP

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    206
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 206
    Par défaut Session et PHP5
    Bonjour, j'ai parcouru le forum pour résoudre mon pb mais je n'ai pas trouvé :/

    Voilà j'ai fais un accès membre avec des sessions. tout marche en local !
    J'upload sur le ftp et là boom ca marche plus :/

    Mon hébergeur est 1&1.

    J'ai vu sur différent post d'une variable a modifier dans php.ini mais je n'y ai pas accès ...

    Comment faire ?

    Merci d'avance

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Bonjour,

    utilises-tu bien
    et appelles-tu bien tes variables par
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    206
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 206
    Par défaut
    Oui oui, j'ai bien ca.

    En fait j'ai une page où l'utilisateur se log.Cette page test si l'utilisateur est déjà logé ou pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    	if (isset($_SESSION['id_admin'])) {
    Si c'est bon (donc on rentre dans le if), un menu apparaît (jusque là ca marche) .
    Sinon, il y a le formulaire de connexion qui apparait (ca marche aussi).
    Lorsque je click sur un bouton de ce menu, ca m'amène sur la page choisie et c'est là que je perds là session car sur mon l'autre page, je fais exactement le même test, et c'est pas bon ...

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    tu as bien le session_start() sur la deuxieme page ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    206
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 206
    Par défaut
    Oui oui

    Une solution p-e? lol

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    est ce que la session conserve le meme id sur les deux pages ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    206
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 206
    Par défaut
    Non ...

    Lorsque je lance ma 1ere page, Il m'affiche mon formulaire pour m'identifier et il m'affiche une id de session.

    Quand je me connecte et qu'il vérifie dans la bdd que j'ai le droit, il m'affiche mon menu d'accès et j'ai une autre id de session (on est tjs ds la meme page)

    Ensuite quand je click sur un bouton du menu, il m'affiche ma seconde page et j'ai encore une autre id de session ...


    Pourquoi je ne garde pas la même id de session et comment y remédier?

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    206
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 206
    Par défaut
    Quelques precisions :

    Dans ma page index.php, j'ai des include dont le 1er "haut.php" contient le session_start() en tout 1er dans le head.

    Ensuite je teste si l'utilisateur est déjà logé. Si oui, un menu apparait. Si non j'ai mon formulaire d'identification qui apparaît et le bouton OK pointe sur un autre fichier qui gère la session :
    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
    if (strcmp($Personne['pwd'],$MotDePasseDecrypte) == 0) {
    			//Si tout est bon, on remplit les variables de SESSION
    			$_SESSION['id_admin'] = $Personne['id_admin'];
    			$_SESSION['nom_admin'] = $Personne['nom_admin'];
    			$_SESSION['prenom_admin'] = $Personne['prenom_admin'];
    			$_SESSION['email_admin'] = $Personne['mail'];
    			//On redirige vers l'accueil Administration
    ?>
    			<script language="javascript"	type="text/javascript">
    			<!--
    				window.location.replace("./index.php");
    			-->
    			</script>
    <?php
    		} else {
    			//Le mot de passe n'est pas correct
    			echo '<script type="text/javascript">window.alert(\'Votre mot de passe est incorrect !\');</script>';
    		}
    Toutes mes autres pages font appel a l'include haut.php (donc session_start())

    Donc ormi que je n'ai pas la même id de session de page en page, je vien de m'apercevoir que dans index.php, j'avais cette erreur :
    Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /homepages/22/d257781909/htdocs/site_fla/admin/haut.php:3) in /homepages/22/d257781909/htdocs/site_fla/admin/haut.php on line 4

    Cette ligne correspond au session_start() de mon fichier haut.php.
    Je n'appelle dans aucune autre page session_start sauf une fois (l'include haut.php)

    Donc je ne comprends pas :/
    Help SVP

  9. #9
    Expert confirmé
    Avatar de 12monkeys
    Homme Profil pro
    Webmaster
    Inscrit en
    Novembre 2006
    Messages
    4 093
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Service public

    Informations forums :
    Inscription : Novembre 2006
    Messages : 4 093
    Par défaut
    Bonsoir

    Ceci règlerait t'il ton problème : http://php.developpez.com/faq/index....s_already_sent.

    Tu peut aussi regarder du coté du BOM (Byte order Mark).

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    206
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 206
    Par défaut
    Non ca n'a pas résolu mon problème :/

    J'ai revérifié mes balise, tout est ok

    Peut etre qu'il y a une erreur que je ne vois pas donc voici le code de haut.php
    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
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="fr-FR">
     
    <head>
    <?php
    	session_start();
    ?>
    	<title>According To - Site Officiel</title>
     
    	<meta name="Author" content="According To" />
    	<meta name="Copyright" content="According To" />
    	<meta name="description" content="Tee shirt, According To, avignon, textil, création" />
    	<meta name="keywords" content="Tee shirt, According To, avignon, textil, création" /> 
    	<meta name="Revisit-after" content="3 days" />
    	<meta http-equiv="Content-language" content="fr" />
     
    	<link rel="stylesheet" type="text/css" href="./style.css" />
     
    	<script type="text/javascript" src="./js/images.js" /></script>
    	<script type="text/javascript" src="./js/popup.js" /></script>
    	<script type="text/javascript" src="./js/size.js" /></script>
     
    </head>
    <body>
    <div id="page">	
    	<div id="banniere">
    		<img src="./image/hautr.jpg" width="1000" height="254" border="0" alt=""></img>
    	</div>
    Voici le code de ma page index.php
    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
    <?php
    	include("./haut.php");
    	include("./menu.php");	
     
    //	@session_start();
    	include("./authentification.php");
    	//include("./class/BDDClass.php");
    ?>	
    <div id="tout_contenu">
     
    	<?php
     
    	$session = session_id() ;
    	echo '<p>session : '.$session.'</p>';
     
    	if (isset($_SESSION['id_admin'])) {
    	?>
    	<div id="login">
    		<span id="deconnexion"><a href="?deco=<?php echo $_SESSION['id_admin']; ?>" accesskey="d" title="Se d&acute;connecter">D&eacute;connexion</a></span>
    		<br />
    		<span id="statutConnexion">Bonjour <?php echo $_SESSION['nom_admin'].' '.$_SESSION['prenom_admin']; ?></span>
    		<hr width="50%" size="1" align="center" color="black" />
    	</div>
    	<div id="admin">
    		<a href="./gestion-news.php" alt="Retour">
    			<img src="./img/gerer-news.png" align="center" ></img>
    		</a>
    	</div>
    	<?php
    	} 
    	//Sinon on affiche le formulaire
    	else {
    	?>
    		<h3>Connexion :</h3>
    		<hr width="50%" size="1" align="center" color="black" />
     
    		<form id="form_authentification" action="" method="post">
    			<fieldset>
    				<p>
    					<label for="pseudo">Pseudo : </label>
    					<input type="text" name="form_login" id="form_login">
    				</p>
    				<p>
    					<label for="motdepasse">Mot de passe : </label>
    					<input type="password" name="form_password" id="form_password">		
    				</p>	
    			</fieldset>
    				<p>
    					<input type="submit" name="form_validation_authentification" id="form_validation_authentification" value="Valider">
    				</p>	
    		</form>
    	<?php
    	}
    	?>
    		<hr width="50%" size="1" align="center" color="black" />
    </div>
    <?php
    	include("./bas.php");
    ?>
    j'ai déjà donné le code de authentification.php dans le post précédent.

    Et pour finir, le code de bas.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    	<div id="bas">
    		<img src="../image/bas.jpg" width="1000" height="8" border="0" alt=""></img>     
    		<hr width="50%" size="1" align="center"/>
    		<span>
    			<a href="mailto:contact@accordingto.fr"> Contact </a>
    		</span>	
    		<br />
    		<span id="copyright">Copyright 2008 ACCORDING TO</span>
    		<br /><br />
    	</div>  
    </div>
    </body>
    </html>
    Voilà, vous avez le code complet maintenant

    Merci d'avance

  11. #11
    Expert confirmé
    Avatar de 12monkeys
    Homme Profil pro
    Webmaster
    Inscrit en
    Novembre 2006
    Messages
    4 093
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Service public

    Informations forums :
    Inscription : Novembre 2006
    Messages : 4 093
    Par défaut
    Tout au contraire c'est bien ça le problème :

    tout envoi de texte vers le navigateur est à faire après l'appel à session_start, or dans ton code c'est pas le cas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="fr-FR">
     
    <head>
    <?php
    	session_start();
    ?>
    à remplacer par :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <?php
    	session_start();
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="fr-FR">
     
    <head>
    Relis bien le lien que je t'ai donné vers la faq.

  12. #12
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    206
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 206
    Par défaut
    Merci, c'était donc ca ...

    J'étais persuadé que c'était à mettre dans le head comme j'avais lu sur plusieur site :/

    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [POO] PHP5 objet et session
    Par deborah95 dans le forum Langage
    Réponses: 4
    Dernier message: 17/04/2007, 20h58
  2. Utilisation de foreach avec les sessions sous PHP5
    Par frochard dans le forum Langage
    Réponses: 1
    Dernier message: 11/11/2006, 01h14
  3. php5 session (restauration)
    Par jeff_! dans le forum Langage
    Réponses: 15
    Dernier message: 23/08/2006, 22h01
  4. probleme avec les session et php5
    Par stephcache dans le forum Langage
    Réponses: 5
    Dernier message: 08/06/2006, 18h34

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