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 :

Utilisation de sessions : headers already sent [Fait]


Sujet :

Langage PHP

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2007
    Messages : 11
    Par défaut Utilisation de sessions : headers already sent
    Bonjour, je suis débutant en php
    j'ai un probleme de session pour poster mes données via un formulaire
    Si quelqu'un peut m'aider SVP!
    je vous donne ainsi le code:

    Voici le le fichier pproposition1.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
    <?php
    session_start();
    //print("!...".session_id()."....\n");
    srand();
    $_SESSION["nb_mystere"]=rand(1,100);
    $_SESSION["essai"]=0;
    $_SESSION["nom"]=" ";
    ?>
    <!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">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>jeu du Nombre Mystére</title>
     
    </head>
     
    <body>
      <form action="pproposition2.php" method="post">
        <p>Votre nom:<input type="text" name="nom" value="" /><br />
    	<p>Votre premiere proposition
    	<br>(Comprise entre 1 et 100);
    	<br><br /><input type="text" name="proposition" /><br /><br /><br />
    	<input type="submit" value="proposer" /></p>
     </form>
     
    </body>
    </html>
    et le fichier pproposition2.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
    <?php
    session_start();
    //print("<...".session_id()."....\n");
    $_SESSION["essai"]++;
    if(isset($_POST["nom"]))
      $_SESSION["nom"]=$_POST["nom"]
      ?>
     
    <!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">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Jeu du Nombre Mystere</title>
     
    </head>
     
    <body>
    <?php
     
     
     
     if($_POST["proposition"]==$_SESSION["nb_mystere"])
     {
     print("<p>Incroyable $_SESSION["nom"] !!!!\n");
     print("<br>Vous avez trouvé: </p>\n");
     print("<p>le nombre mystere etait en effet $_POST[proposition]!</p>\n");
     print("<p> Revenez sur la <a href=\"iindex.php\"> page d'acceuil</a></p>\n");
     }
     else
     {
      print("<p>Vous n'avez pas encore trouvé:\n");
      print("<br>le nombre $_POST[proposition] proposé est trop");
        if($_POST["proposition"]<$_SESSION["nb_mystere"])
      print(" petit!</p>\n");
        else
      print(" grand!</p>\n");
      ?>
       <form action="pproposition2.php" method="post">
        <?php
    	print("<p>Vous avez déja fait :");
    	print("<input readonly type=\"text\" name=\"essai\" value=\"$_SESSION[essai]\">essai(s)<br><br><br>\n");
    	?>
         <p>Votre nouvelle proposition
    	 <br>(Comprise entre 1 et 100):<br><br>
    	 <input type="text" name="proposition" ><br><br />/><br />
    	 <input type="submit" value="proposer"></p>
    	 </form>
    <?php
     }
    ?>
     
     
     
    </body>
    </html>
    Et voila les erreurs que j'ai.
    Warning: session_start(): Cannot send session cookie - headers already sent by (output started at c:\program files\easyphp1-8\www\nouveau dossier\pproposition1.php:2) in c:\program files\easyphp1-8\www\nouveau dossier\pproposition1.php on line 3

    Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at c:\program files\easyphp1-8\www\nouveau dossier\pproposition1.php:2) in c:\program files\easyphp1-8\www\nouveau dossier\pproposition1.php on line 3

    Merci d'avance!!!

  2. #2
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 717
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 717
    Par défaut
    regarde là, il y a des explications sur la façon de corriger cette erreur :
    http://php.developpez.com/faq/?page=...s_already_sent

  3. #3
    Membre chevronné Avatar de FredPsy
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Décembre 2006
    Messages
    285
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2006
    Messages : 285
    Par défaut
    Bonsoir, tu as essayé avec exactement le même code que celui que tu as mis dans le post ?

    Car, je viens de faire un copier coller de ton code et je n'ai aucun messages d'erreur.

    Tout fonctionne correctement.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2007
    Messages : 11
    Par défaut
    Merci FredPsy vous avez parfaitement raison, en fait j'avais laisse un espace entre l'en tête de la page et le debut de la balise <?php.

    Grand merci à vous.

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

Discussions similaires

  1. Cannot send session cookie - headers already sent by
    Par menekis dans le forum Langage
    Réponses: 2
    Dernier message: 09/07/2009, 15h22
  2. Erreur d'ouverture de session "headers already sent"
    Par sibile dans le forum Langage
    Réponses: 7
    Dernier message: 19/08/2008, 19h22
  3. Réponses: 10
    Dernier message: 19/06/2008, 14h27
  4. session start et headers already sent
    Par corsamobile dans le forum Langage
    Réponses: 2
    Dernier message: 23/05/2008, 13h22
  5. une session folle ! (headers already sent ...)
    Par php4life dans le forum Langage
    Réponses: 1
    Dernier message: 27/01/2007, 16h19

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