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