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 :

headers already sent


Sujet :

Langage PHP

  1. #1
    Membre éclairé
    Homme Profil pro
    Benevole
    Inscrit en
    mai 2004
    Messages
    1 578
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Benevole
    Secteur : Enseignement

    Informations forums :
    Inscription : mai 2004
    Messages : 1 578
    Points : 864
    Points
    864
    Par défaut headers already sent
    Bonjour à tous
    je suis novice au niveau de la programmation en php. Je suis en ce moment en train de monter système de connexion a une base de données.
    voici le code que j'utilise :

    Code de mon fichier 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
    <?php 
    /*
    	
    */
    session_start();
    include('entete.php'); ?>
    		<div id="contenu">
    			<h1 style="text-align:center">CONNEXION UTLISATEUR</h1>
    			<form action="option.php" method="post">
    				<fieldset><legend>Connexion</legend>
    					<?php 	if(isset($_SESSION['loginerror']))
    							{
    								echo '<p style="color:red">Le nom utilisateur et/ou mot de passe est incoorect, Reesayez</p>';
    								unset($_SESSION['loginerror']);
    							}
    					?>
    					<label class="float">Nom utilisateur</label><input type="text" name="username"><br/><br/>
    					<label class="float">Mot de passe</label><input type="password" name="mdp"><br/><br/>
     
    					<input type="submit" name="envoie" value="Connecter" style="margin-left:30%"><br/>
    				</fieldset>
    			</form>
    		</div>
    <?php include('bas.php'); ?>
    Code de mon fichier entete.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
     
    <?php
    /*
    */
    ?>
     
    <!doctype>
    <html>
    	<header>
    		<title>RESEAU RUSTA </title>
    		<link rel="stylesheet" type="text/css" href="design.css" media="all" />
    		<meta http-equiv="Content-Type" content="image/jpg; charset=iso-8859-1">
    		<script src="ajaxphoto.js" type="text/javascript"></script>
    	</header>
     
    	<body>
    		<div class="top"></div>

    Code de mon fichier bas.php

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    		<p style="background-color:#dfe5f5;padding-left:10px;text-align:center">
    GROUPE RUSTA ® </p>
    	</body>
    </html>
    lors de l'execution voici le code d'erreur que j'ai :

    Warning: session_start() [function.session-start]: Cannot send session cookie -
    headers already sent by (output started at C:\wamp\www\track\index.php:1) in C:\wamp\www\track\index.php on line 7
    j'ai beau chercher je ne vois ou se trouve l'erreur.

    Merci de m'aider

  2. #2
    Expert éminent sénior

    Homme Profil pro
    Développeur Web
    Inscrit en
    septembre 2010
    Messages
    5 260
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : septembre 2010
    Messages : 5 260
    Points : 10 113
    Points
    10 113
    Par défaut
    Il ne faut pas faire afficher de texte avant de déclarer session_start()

    Autre chose je vois que tu utilise l'encodage charset=iso-8859-1. C'est une mauvaise idée : des fonctions php comme json_encode ou une librairie comme jquery ne sont compatibles qu'avec l'utf-8 et l'iso-8859-1 est par ailleurs très limitatif.

  3. #3
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    octobre 2006
    Messages
    8 809
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : octobre 2006
    Messages : 8 809
    Points : 4 275
    Points
    4 275
    Billets dans le blog
    1
    Par défaut
    Il ne faut pas faire afficher de texte avant de déclarer session_start()
    Même pas un espace...
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

  4. #4
    Membre éclairé
    Homme Profil pro
    Benevole
    Inscrit en
    mai 2004
    Messages
    1 578
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Benevole
    Secteur : Enseignement

    Informations forums :
    Inscription : mai 2004
    Messages : 1 578
    Points : 864
    Points
    864
    Par défaut
    je ne sais pas si j'ai compris mais voici la modif que j'ai fait :
    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
    <?php
    session_start();
    include('entete.php'); ?>
    		<div id="contenu">
    			<h1 style="text-align:center">CONNEXION UTLISATEUR</h1>
    			<form action="option.php" method="post">
    				<fieldset><legend>Connexion</legend>
    					<?php 	if(isset($_SESSION['loginerror']))
    							{
    								echo '<p style="color:red">Le nom utilisateur et/ou mot de passe est incoorect, Reesayez</p>';
    								unset($_SESSION['loginerror']);
    							}
    					?>
    					<label class="float">Nom utilisateur</label><input type="text" name="username"><br/><br/>
    					<label class="float">Mot de passe</label><input type="password" name="mdp"><br/><br/>
     
    					<input type="submit" name="envoie" value="Connecter" style="margin-left:30%"><br/>
    				</fieldset>
    			</form>
    		</div>
    <?php include('bas.php'); ?>
    Mis j'ai toujours le même message d'erreur !

  5. #5
    Expert éminent sénior

    Homme Profil pro
    Développeur Web
    Inscrit en
    septembre 2010
    Messages
    5 260
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : septembre 2010
    Messages : 5 260
    Points : 10 113
    Points
    10 113
    Par défaut
    Ce fichier est peut-être appelé par un autre qui affiche du texte auparavant...

  6. #6
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    octobre 2006
    Messages
    8 809
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : octobre 2006
    Messages : 8 809
    Points : 4 275
    Points
    4 275
    Billets dans le blog
    1
    Par défaut
    Je ne regarde pas le détail de ton code, mais il y a un truc qui me saute aux yeux : dans ta partie html, pas de doctype, head puis body ; moi, j'écrirais ton code ainsi :...

    Je retire ; j'avais oublié ton 1er post ; simplement, dans entete.php, je retirerais car des balises PHP dans d'autres, ça doit pas être terrible...
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

  7. #7
    Membre éclairé
    Homme Profil pro
    Benevole
    Inscrit en
    mai 2004
    Messages
    1 578
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Benevole
    Secteur : Enseignement

    Informations forums :
    Inscription : mai 2004
    Messages : 1 578
    Points : 864
    Points
    864
    Par défaut
    Bon la je viens de remodeler un peu mon code dont voici :
    fichier 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
     
    <?php
    session_start();
    include('entete.php'); ?>
    		<div id="contenu">
    			<h1 style="text-align:center">CONNEXION UTLISATEUR</h1>
    			<form action="option.php" method="post">
    				<fieldset><legend>Connexion</legend>
    					<?php 	if(isset($_SESSION['loginerror']))
    							{
    								echo '<p style="color:red">Le nom utilisateur et/ou mot de passe est incoorect, Reesayez</p>';
    								unset($_SESSION['loginerror']);
    							}
    					?>
    					<label class="float">Nom utilisateur</label><input type="text" name="username"><br/><br/>
    					<label class="float">Mot de passe</label><input type="password" name="mdp"><br/><br/>
     
    					<input type="submit" name="envoie" value="Connecter" style="margin-left:30%"><br/>
    				</fieldset>
    			</form>
    		</div>
    fichier entete.php

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <!doctype>
    <html>
    	<header>
    		<title>RESEAU RUSTA </title>
    		<link rel="stylesheet" type="text/css" href="design.css" media="all" />
    		<meta http-equiv="Content-Type" content="image/jpg; charset=utf-8">
    		</header>
     
    	<body>
    		<div class="top"></div>
    		</body>
    </html>
    et là j'ai toujours le même message

  8. #8
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    octobre 2006
    Messages
    8 809
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : octobre 2006
    Messages : 8 809
    Points : 4 275
    Points
    4 275
    Billets dans le blog
    1
    Par défaut
    Pourquoi t'as retiré <?php include('bas.php'); ?> ? Et d'autre part </body></html> dans l'en-tête, c'est pas excellent...
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

  9. #9
    Membre éclairé
    Homme Profil pro
    Benevole
    Inscrit en
    mai 2004
    Messages
    1 578
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Benevole
    Secteur : Enseignement

    Informations forums :
    Inscription : mai 2004
    Messages : 1 578
    Points : 864
    Points
    864
    Par défaut
    ok je pense qu'il faut que je revois tout a zero avant de revenir poster

  10. #10
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    octobre 2006
    Messages
    8 809
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : octobre 2006
    Messages : 8 809
    Points : 4 275
    Points
    4 275
    Billets dans le blog
    1
    Par défaut
    Et à 19h08, tu avais <script src="ajaxphoto.js" type="text/javascript"></script> dans ton en-tête, et plus à 22h42...
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

  11. #11
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par devalender Voir le message
    ok je pense qu'il faut que je revois tout a zero avant de revenir poster
    Bonjour,
    en effet, c'est une bonne idée.
    Commence par revoir la structure de base du HTML(5).

    Car tu confonds les balises <head> et <header>...

    Et tant qu'à débuter dans de bonnes conditions : passe tout en utf-8


    N.B. Enregistre tes fichiers en : "utf-8 sans BOM"

    Quant à PHP, le manuel PHP fournit de nombreuses réponses :
    Dernière modification par Invité ; 02/12/2013 à 15h23.

  12. #12
    Rédacteur

    Avatar de Torgar
    Homme Profil pro
    Développeur Web
    Inscrit en
    août 2007
    Messages
    2 335
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : août 2007
    Messages : 2 335
    Points : 8 097
    Points
    8 097
    Je ne suis pas schizophrène, nous sommes unanime !!!

    ► Pensez à la balise code et au CODE HTML GENERE !!!!
    ► Au si c'est le cas et au à ceux qui vous ont aidé.
    Vous souhaitez participer aux rubriques CSS et (X)HTML ? Contactez-nous !

    Créer des colonnes de même hauteur en CSS
    Glossaire CSS
    Les bordures en CSS3
    Les transitions en CSS3

Discussions similaires

  1. [PHP-JS] problème headers already sent
    Par charlene44 dans le forum Langage
    Réponses: 12
    Dernier message: 14/06/2006, 13h55
  2. Réponses: 11
    Dernier message: 11/05/2006, 11h16
  3. [Cookies] cookies et 'headers already sent'
    Par wellser dans le forum Langage
    Réponses: 5
    Dernier message: 26/04/2006, 13h37
  4. [Cookies] Warning : headers already sent
    Par arti2004 dans le forum Langage
    Réponses: 8
    Dernier message: 04/04/2006, 16h31
  5. [JpGraph] Header already sent
    Par grunk dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 09/02/2006, 16h54

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