probleme de cookie - PHP - Programmation
Marsh Posté le 22-01-2005 à 09:54:23
Il ne faut rien avoir envoyé au client avant d'utiliser setcookie() ! 
Voir la doc.
Marsh Posté le 22-01-2005 à 10:07:03
Tu aurais pu prendre la peine de FAIRE UNE RECHERCHE avant de poser la question.  
 
 
Cette erreur revient de manière récurrente sur ce forum : 
 
=> Gougueule
Marsh Posté le 22-01-2005 à 10:58:00
ok mais je ne comprend pas non plus avec la doc , sa ne fait que 2 semaines que je me suis mit au php. alors est se que quelqu'un peut m'aider parce que meme quand je fait un truc tout simple du style : 
 
setcookie("telechargement","hello" ); 
 
j'ai toujours droit a cette maudite erreur
Marsh Posté le 22-01-2005 à 11:14:24
Règle N°1 : Montre ton code ! 
 
On est pas devins 
Marsh Posté le 22-01-2005 à 11:16:55
ok le voici 
 
$host = "localhost";   
           
          $user = "root"; 
           
          $bdd = "bdd"; 
           
          $passwd  = ""; 
           
          $erreur = false; 
           
          mysql_connect($host, $user,$passwd) or die("erreur de connexion au serveur" ); 
          mysql_select_db($bdd) or die("erreur de connexion a la base de donnees" ); 
           
           
          $db_req = 'SELECT uploader_pwd, uploader_login FROM uploader WHERE uploader_pwd = "' . $_POST['pwdcreateur']  . '" AND uploader_login = "' . $_POST['logincreateur'].'"'; 
          $db_res = mysql_query($db_req); 
          $num_ligne = mysql_num_rows($db_res); 
           
          if ($num_ligne != 0) 
          { 
            echo "Vous êtes deja inscrit sur notre site"; 
          }     
        
          else if($_POST['pwdcreateur'] == NULL ) 
          { 
            echo "aucun mot de passe trouvé, vous n'êtes pas inscrit sur le site"; 
            $erreur = true; 
          } 
           
          else if($_POST['cpwdcreateur'] == NULL ) 
          { 
            echo "aucune confirmation de mot de passe trouvé, vous n'êtes pas inscrit sur le site"; 
            $erreur = true; 
          } 
           
          else if($_POST['logincreateur'] == NULL ) 
          { 
            echo "aucun login trouvé, vous n'êtes pas inscrit sur le site"; 
            $erreur = true; 
          } 
           
          else if($_POST['nomcreateur'] == NULL ) 
          { 
            echo "aucun nom trouvé, vous n'êtes pas inscrit sur le site"; 
            $erreur = true; 
          } 
           
          else if($_POST['prenomcreateur'] == NULL ) 
          { 
            echo "aucun prenom trouvé, vous n'êtes pas inscrit sur le site"; 
            $erreur = true; 
          } 
           
          else if($_POST['mailcreateur'] == NULL ) 
          { 
            echo "aucun mail trouvé, vous n'êtes pas inscrit sur le site"; 
            $erreur = true; 
          } 
           
          else if($_POST['pwdcreateur'] !=  $_POST['cpwdcreateur']) 
          { 
            echo "confirmation incorrect, vous n'êtes pas inscrit sur le site"; 
            $erreur = true; 
          } 
           
          else  
          { 
            setcookie("telechargement","hello" ); 
             
            $requet = 'INSERT INTO uploader VALUES ("'.$_POST['pwdcreateur'].'", "'.$_POST['logincreateur'].'", "'.$_POST['nomcreateur'].'", "'.$_POST['prenomcreateur'].'", "'.$_POST['mailcreateur'].'" )'; 
           
            mysql_query($requet); 
 
            echo 'Felicitation ' . $_POST['nomcreateur'] . ' , vous etes a présent inscrit sur notre site'; 
             
          } 
         
        if($erreur) 
        { 
            echo "<div id="."bouton-retour".">". 
              "<form methode="."post"." action="."Inscription.php"."><input type="."submit"." value="."Retour"." /></form>". 
            "</div>"; 
        } 
        else 
        { 
            echo "<div id="."bouton-retour".">". 
              "<form methode="."post"." action="."../identifie/Acceuil.php"."><input type="."submit"." value="."OK"." /></form>". 
            "</div>"; 
        } 
         
        mysql_close();  
         
     ?>  
 
merci pour l'aide
Marsh Posté le 22-01-2005 à 11:32:03
J'ai pas vu le <?php  ? 
 
Il ne faut rien avant !
Marsh Posté le 22-01-2005 à 13:43:28
<?php doit être au début de la première ligne du fichier. 
 
Montre le fichier complet.
Marsh Posté le 22-01-2005 à 14:27:53
le fichier complet ???? 
ok comme tu veux 
 
<!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" lang="fr"> 
   
  <head> 
    <title> 
      site web 
    </title> 
        <meta http-equiv="Content-type" content='text/html; charset="ISO-8859-15"' /> 
     
     
    <!--	<link rel="stylesheet" type="text/css" href="../style.css" title="index" media="all" /> --> 
 	<style type="text/css" media="all">@import "../style2.css";</style> 
 	<!--[if lt IE 7]> 
 	<link rel="stylesheet" href="../style.css" type="text/css"/> 
 	<![endif]--> 
     
    <script src="../script.js" type="text/javascript"> 
    </script> 
     
  </head> 
   
  <body> 
    <div id="menu-haut" > 
      <img src="../logo.png" alt="logo" /> 
      <div id="titre"> 
        <img src="../titre.png" alt="titre" /> 
      </div> 
      <div id="animation"> 
          <img src="../TELECHARGEMENT.gif" alt=""/> 
      </div> 
    </div> 
     
     
    <div id="menu-gauche"> 
     
    <!-- partie ALLER A --> 
    <div id="menu-ALLER-A"> 
        <div id="titre-ALLER-A"> 
          ALLER A : 
        </div> 
         
        <div id="contenu-ALLER-A"> 
 
            <img src="../bouton-accueil-select.png" alt="bouton"/> 
 
            <a href="Accueil-windows.html" 
            onmouseover= "document.images[4].src ='../bouton-windows-select.png',document.images[3].src ='../bouton-accueil-deselect.png'" 
            onmouseout=  "document.images[4].src ='../bouton-windows-deselect.png',document.images[3].src ='../bouton-accueil-select.png'" > 
            <img src="../bouton-windows-deselect.png" alt="bouton"/> 
            </a> 
 
            <a href="Accueil-linux.html" 
            onmouseover= "document.images[5].src ='../bouton-linux-select.png',document.images[3].src ='../bouton-accueil-deselect.png'" 
            onmouseout=  "document.images[5].src ='../bouton-linux-deselect.png',document.images[3].src ='../bouton-accueil-select.png'"> 
            <img src="../bouton-linux-deselect.png" alt="bouton"/> 
            </a> 
 
            <a href="Accueil-mac.html" 
            onmouseover= "document.images[6].src ='../bouton-mac-select.png',document.images[3].src ='../bouton-accueil-deselect.png'" 
            onmouseout=  "document.images[6].src ='../bouton-mac-deselect.png',document.images[3].src ='../bouton-accueil-select.png'"> 
            <img src="../bouton-mac-deselect.png" alt="bouton"/> 
            </a> 
 
        </div> 
      </div> 
      <!--fin partie ALLER A --> 
       
      <!-- partie RECHERCHE --> 
      <div id="module-RECHERCHE"> 
         <div id="titre-RECHERCHE"> 
           RECHERCHE : 
         </div> 
             
        <div id="contenu-RECHERCHE"> 
          <ul> 
            <li>Dans : </li> 
          </ul> 
             
          <div class="centre"> 
           <select name="liste"> 
            <option value="Windows" > 
               Windows  
            </option> 
            <option value="Linux" > 
               Linux  
            </option> 
            <option value="Mac" > 
               Mac  
            </option> 
           </select> 
          </div> 
             
          <ul> 
            <li>Recherche : </li> 
          </ul> 
               
          <div class="centre"> 
            <input type="text" name="nom" size="10"/> 
                
            <input type="submit" value="Envoyer" /> 
          </div> 
             
          <ul> 
            <li><a href="Tout-les-logiciels.html" class="text">Tous les logiciels</a></li> 
          </ul> 
        </div>  
      </div> 
      <!-- fin partie RECHERCHE --> 
       
      <!-- partie CONTACT --> 
      <div id="module-CONTACT"> 
        <div id="titre-CONTACT"> 
          CONTACT : 
        </div> 
         
        <div  id="contenu-CONTACT"> 
          <ul> 
            <li> 
            <a href="mailto:merchezdes@tiscali.fr" class="text">Webmaster</a></li> 
          </ul> 
        </div> 
      </div> 
      <!-- fin partie CONTACT --> 
       
    </div>   
     
     
    <!-- partie barre de presentation --> 
    <div id="barre-de-presentation"> 
      <div class="gauche"> 
        <img src="../angle.png" alt="angle"/> 
      </div> 
      <div id="barre-de-presentation-contenu"> 
        ACCUEIL 
      </div> 
    </div> 
    <!--fin partie barre de presentation --> 
     
    <!-- partie barre de menu --> 
    <div id="barre-de-menu"> 
      <img src="../barre-menu.png" alt="barre"/> 
       
      <span id="Upload"> 
        <a href="Upload.php" class="menu-Upload">Uploader</a> 
      </span> 
      <span id="privee"> 
        <?php echo "Bonjour : " . $_COOKIE["telechargement"]; ?> 
      </span> 
 
       
    </div> 
    <!--fin partie barre de menu --> 
     
     
    <!--partie note --> 
    <div id="partie-note"> 
        Ce site web de telechargement de freeware est totalement gratuit. 
    </div> 
    <!--fin partie note --> 
     
     
    <!-- partie centrale --> 
    <div id="partie-centrale"> 
      <ul> 
        <li><a href="Accueil-Windows.html" class="centre">Windows </a></li> 
      </ul> 
      <p /> 
      <ul> 
        <li><a href="Accueil-Linux.html" class="centre">Linux </a></li> 
      </ul> 
      <p /> 
      <ul> 
        <li><a href="Accueil-Mac.html" class="centre">Mac </a></li> 
      </ul> 
    </div> 
    <!--fin partie centrale --> 
 
  </body> 
</html> 
Marsh Posté le 22-01-2005 à 14:28:56
le fichier complet ???? 
ok comme tu veux 
 
 <!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" lang="fr"> 
 
 <html> 
  <head> 
    <title> 
      site  
    </title> 
      
    <!--	<link rel="stylesheet" type="text/css" href="../style.css" title="index" media="all" /> --> 
 	<style type="text/css" media="all">@import "../style2.css";</style> 
 	<!--[if lt IE 7]> 
 	<link rel="stylesheet" href="../style.css" type="text/css"/> 
 	<![endif]--> 
     
   <script src="../script.js" type="text/javascript"> 
    </script> 
     
  </head> 
   
   
  <body > 
   
  <?php  
      setcookie("telechargement","hello" );  
  ?> 
     
    <div id="menu-haut" > 
      <div class="gauche"> 
        <img src="../logo.png" alt="logo" /> 
      </div> 
      <div id="titre"> 
        <img src="../titre.png" alt="titre" /> 
      </div> 
    </div> 
     
     
    <div id="menu-gauche"> 
     
    <!-- partie ALLER A --> 
    <div id="menu-ALLER-A"> 
        <div id="titre-ALLER-A"> 
          ALLER A : 
        </div> 
         
        <div id="contenu-ALLER-A"> 
 
            <a href="Acceuil.html" 
            onmouseover= "document.images[2].src ='../bouton-accueil-select.png'" 
            onmouseout=  "document.images[2].src ='../bouton-accueil-deselect.png'"> 
            <img src="../bouton-accueil-deselect.png" alt="bouton"/> 
            </a> 
             
            <a href="Accueil-windows.html" 
            onmouseover= "document.images[3].src ='../bouton-windows-select.png'" 
            onmouseout=  "document.images[3].src ='../bouton-windows-deselect.png'"> 
            <img src="../bouton-windows-deselect.png" alt="bouton"/> 
            </a> 
 
            <a href="Accueil-linux.html" 
            onmouseover= "document.images[4].src ='../bouton-linux-select.png'" 
            onmouseout=  "document.images[4].src ='../bouton-linux-deselect.png'"> 
            <img src="../bouton-linux-deselect.png" alt="bouton"/> 
            </a> 
 
            <a href="Accueil-mac.html" 
            onmouseover= "document.images[5].src ='../bouton-mac-select.png'" 
            onmouseout=  "document.images[5].src ='../bouton-mac-deselect.png'"> 
            <img src="../bouton-mac-deselect.png" alt="bouton"/> 
            </a> 
 
        </div> 
      </div> 
      <!--fin partie ALLER A --> 
       
      <!-- partie RECHERCHE --> 
      <div id="module-RECHERCHE"> 
         <div id="titre-RECHERCHE"> 
           RECHERCHE : 
         </div> 
             
        <div id="contenu-RECHERCHE"> 
          <ul> 
            <li>Dans : </li> 
          </ul> 
             
          <div class="centre"> 
           <select name="liste"> 
            <option value="Windows" > 
               Windows  
            </option> 
            <option value="Linux" > 
               Linux  
            </option> 
            <option value="Mac" > 
               Mac  
            </option> 
           </select> 
          </div> 
             
          <ul> 
            <li>Recherche : </li> 
          </ul> 
               
          <div  class="centre"> 
            <input type="text" name="nom" size="10"/> 
                
            <input type="submit" value="Envoyer" /> 
          </div> 
             
          <ul> 
            <li><a href="Tout-les-logiciels.html" class="text">Tous les logiciels</a></li> 
          </ul> 
        </div>  
      </div> 
      <!-- fin partie RECHERCHE --> 
       
      <!-- partie CONTACT --> 
      <div id="module-CONTACT"> 
        <div id="titre-CONTACT"> 
          CONTACT : 
        </div> 
         
        <div  id="contenu-CONTACT"> 
          <ul> 
            <li> 
            <a href="mailto:merchezdes@tiscali.fr" class="text">Webmaster</a></li> 
          </ul> 
        </div> 
      </div> 
      <!-- fin partie CONTACT --> 
       
    </div>   
     
     
    <!-- partie barre de presentation --> 
    <div id="barre-de-presentation"> 
      <div class="gauche"> 
        <img src="../angle.png" alt="angle"/> 
      </div> 
      <div id="barre-de-presentation-contenu"> 
        INSCRIPTION : VALIDATION 
      </div> 
    </div> 
    <!--fin partie barre de presentation --> 
     
     
    <!-- partie barre de menu --> 
    <div id="barre-de-menu"> 
      <img src="../ligne.png" alt="ligne"/> 
       
      <p></p> 
       
      <?php 
 
        // Déclaration des paramètres de connexion 
 
          $host = "localhost";   
           
          $user = "merchez"; 
           
          $bdd = "bdd"; 
           
          $passwd  = ""; 
           
          $erreur = false; 
           
          mysql_connect($host, $user,$passwd) or die("erreur de connexion au serveur" ); 
          mysql_select_db($bdd) or die("erreur de connexion a la base de donnees" ); 
           
           
          $db_req = 'SELECT uploader_pwd, uploader_login FROM uploader WHERE uploader_pwd = "' . $_POST['pwdcreateur']  . '" AND uploader_login = "' . $_POST['logincreateur'].'"'; 
          $db_res = mysql_query($db_req); 
          $num_ligne = mysql_num_rows($db_res); 
           
          if ($num_ligne != 0) 
          { 
            echo "Vous êtes deja inscrit sur notre site"; 
          }     
        
          else if($_POST['pwdcreateur'] == NULL ) 
          { 
            echo "aucun mot de passe trouvé, vous n'êtes pas inscrit sur le site"; 
            $erreur = true; 
          } 
           
          else if($_POST['cpwdcreateur'] == NULL ) 
          { 
            echo "aucune confirmation de mot de passe trouvé, vous n'êtes pas inscrit sur le site"; 
            $erreur = true; 
          } 
           
          else if($_POST['logincreateur'] == NULL ) 
          { 
            echo "aucun login trouvé, vous n'êtes pas inscrit sur le site"; 
            $erreur = true; 
          } 
           
          else if($_POST['nomcreateur'] == NULL ) 
          { 
            echo "aucun nom trouvé, vous n'êtes pas inscrit sur le site"; 
            $erreur = true; 
          } 
           
          else if($_POST['prenomcreateur'] == NULL ) 
          { 
            echo "aucun prenom trouvé, vous n'êtes pas inscrit sur le site"; 
            $erreur = true; 
          } 
           
          else if($_POST['mailcreateur'] == NULL ) 
          { 
            echo "aucun mail trouvé, vous n'êtes pas inscrit sur le site"; 
            $erreur = true; 
          } 
           
          else if($_POST['pwdcreateur'] !=  $_POST['cpwdcreateur']) 
          { 
            echo "confirmation incorrect, vous n'êtes pas inscrit sur le site"; 
            $erreur = true; 
          } 
           
          else  
          { 
             
            $requet = 'INSERT INTO uploader VALUES ("'.$_POST['pwdcreateur'].'", "'.$_POST['logincreateur'].'", "'.$_POST['nomcreateur'].'", "'.$_POST['prenomcreateur'].'", "'.$_POST['mailcreateur'].'" )'; 
           
            mysql_query($requet); 
 
            echo 'Felicitation ' . $_POST['nomcreateur'] . ' , vous etes a présent inscrit sur notre site'; 
             
          } 
         
        if($erreur) 
        { 
            echo "<div id="."bouton-retour".">". 
              "<form methode="."post"." action="."Inscription.php"."><input type="."submit"." value="."Retour"." /></form>". 
            "</div>"; 
        } 
        else 
        { 
            echo "<div id="."bouton-retour".">". 
              "<form methode="."post"." action="."../identifie/Acceuil.php"."><input type="."submit"." value="."OK"." /></form>". 
            "</div>"; 
        } 
         
        mysql_close();  
         
     ?>
Marsh Posté le 22-01-2005 à 14:30:23
le 1er sert a afficher le contenu du cookie et le 2eme sert a l'envoyer . mais du fait que j'arrive pas a l'envoyer , forcement , j'arrive pas a le lire 
 
merci beaucoup pour ton aide 
Marsh Posté le 22-01-2005 à 15:17:30
Tu ne dois rien "enoyer" avant d'envoyer les headers. 
Or ici tu envois deja du code html. 
 
Donc deplace ton <?php setcookie.. ?> a la premiere ligne du fichier.
Marsh Posté le 21-01-2005 à 22:35:31
Bonjour
je voudrais tout simplement creer un cookie , mais a chaque fois j'ai droit a cette manifique erreur:
Warning: Cannot modify header information - headers already sent by ...
voici se que je fais dans mon code :
setcookie("telechargement", $_POST['logincreateur']);
sa doit etre une erreur toute bete mais je ne la trouve pas alors si quelqu'un pouvais m'aider, sa serai cool
merci d'avance