Cookie en PHP
Résolu/Fermé
A voir également:
- Cookie en PHP
- Easy php - Télécharger - Divers Web & Internet
- Supprimer cookie - Guide
- Cookie manager - Télécharger - Confidentialité
- Cookie jam sur facebook - Forum Facebook
- Comment récupérer mon jeu cookie jam - Forum iPad
5 réponses
Utilisateur anonyme
21 juin 2012 à 08:40
21 juin 2012 à 08:40
Une autre fois, évite d'écrire voici le code en entier : quand tu ne mets pas le code en entier. Ça évite un aller-retour de question-réponse. Dis-toi bien que nous ne réfléchissons que d'après les éléments que tu donnes, et que si tu donnes des informations inexactes, ça ne fait pas avancer ton problème.
Donc tu envoies bien des informations ( <!DOCTYPE...<body> ) avant d'envoyer des en-têtes (setcookie)
L'envoi des informations en HTTP se déroule en 2 temps : d'abord l'envoi des en-têtes (informations de session, informations POST, cookies...) PUIS les "données utiles" (page HTML ou image ou autre)
Quand l'envoi des données et commencé, plus question de revenir aux en-têtes.
Dans ton cas, rien n'empêche de faire une petite partie de ton traitement avant le <!DOCTYPE> pour que le cookie soit envoyé avant les données.
Donc tu envoies bien des informations ( <!DOCTYPE...<body> ) avant d'envoyer des en-têtes (setcookie)
L'envoi des informations en HTTP se déroule en 2 temps : d'abord l'envoi des en-têtes (informations de session, informations POST, cookies...) PUIS les "données utiles" (page HTML ou image ou autre)
Quand l'envoi des données et commencé, plus question de revenir aux en-têtes.
Dans ton cas, rien n'empêche de faire une petite partie de ton traitement avant le <!DOCTYPE> pour que le cookie soit envoyé avant les données.
Templier Nocturne
Messages postés
7734
Date d'inscription
jeudi 22 janvier 2009
Statut
Membre
Dernière intervention
21 mai 2016
1 102
20 juin 2012 à 21:34
20 juin 2012 à 21:34
c'est parce que tu lui dit d'expirer à t=3600s
du coup, il expire dés sa création parce que t=3600s, c'est le 1er janvier 72 à 1h du matin ^^
regarde ici : https://www.php.net/manual/fr/function.setcookie.php
du coup, il expire dés sa création parce que t=3600s, c'est le 1er janvier 72 à 1h du matin ^^
regarde ici : https://www.php.net/manual/fr/function.setcookie.php
Utilisateur anonyme
20 juin 2012 à 23:30
20 juin 2012 à 23:30
Bonsoir
Presque d'accord avec Templier Nocturne
Sauf que time()-3600, ce n'est pas le 1er janvier 1972 (1970 ?) à 1 h du matin. C'était il y a une heure.
C'est time()+3600 que tu voulais mettre sans doute (le cookie expirera dans une heure)
Presque d'accord avec Templier Nocturne
Sauf que time()-3600, ce n'est pas le 1er janvier 1972 (1970 ?) à 1 h du matin. C'était il y a une heure.
C'est time()+3600 que tu voulais mettre sans doute (le cookie expirera dans une heure)
Templier Nocturne
Messages postés
7734
Date d'inscription
jeudi 22 janvier 2009
Statut
Membre
Dernière intervention
21 mai 2016
1 102
20 juin 2012 à 23:34
20 juin 2012 à 23:34
oui, j'ai bugué dans la ligne, j'ai lu "setCookie('djgeek', time(), 3600, '/'); "
mettons ça sur le compte de la fatigue liée au bac ;)
mettons ça sur le compte de la fatigue liée au bac ;)
Templier Nocturne
Messages postés
7734
Date d'inscription
jeudi 22 janvier 2009
Statut
Membre
Dernière intervention
21 mai 2016
1 102
20 juin 2012 à 23:39
20 juin 2012 à 23:39
et c'est bien 1970 XD
Templier Nocturne
Messages postés
7734
Date d'inscription
jeudi 22 janvier 2009
Statut
Membre
Dernière intervention
21 mai 2016
1 102
21 juin 2012 à 00:58
21 juin 2012 à 00:58
Ca se dit peut être pas, mais comme l'idée est la je te remercie :)
Quamta dormir, je demande que ça, mais aller au bac en ne connaissant pas une des notions importante, j'ai préféré ne pas m'y risquer ^^
Bonne nuit :)
Quamta dormir, je demande que ça, mais aller au bac en ne connaissant pas une des notions importante, j'ai préféré ne pas m'y risquer ^^
Bonne nuit :)
Utilisateur anonyme
21 juin 2012 à 08:04
21 juin 2012 à 08:04
Bonjour
Il s'agit d'une erreur différente, maintenant. Visiblement, tu envoies des en-têtes après avoir envoyé des données, ce qui est interdit par le protocole HTTP.
Mais ce n'est pas avec le script tel que tu nous le donnes, car il ne présente pas ce problème, les sorties commencent ligne 15 et non pas 24, et je ne vois pas quels entêtes sont envoyées après cette ligne.
Si c'est bien administration.php que tu nous montres, il en manque le début. Ou alors il a été modifié depuis ce message d'erreur.
Il s'agit d'une erreur différente, maintenant. Visiblement, tu envoies des en-têtes après avoir envoyé des données, ce qui est interdit par le protocole HTTP.
Mais ce n'est pas avec le script tel que tu nous le donnes, car il ne présente pas ce problème, les sorties commencent ligne 15 et non pas 24, et je ne vois pas quels entêtes sont envoyées après cette ligne.
Si c'est bien administration.php que tu nous montres, il en manque le début. Ou alors il a été modifié depuis ce message d'erreur.
voici le fichier entier :
<!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>
<link rel="shortcut icon" type="image/png" href="images/favicon.png" />
<title>DjGeeK téléchargement</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta http-equiv="content-language" content="fr" />
<link href="style.css" title="Défaut" rel="stylesheet" type="text/css" media="screen" />
<script type="text/javascript" src="js/jquery-1.2.6.min.js"></script>
<script type="text/javascript" src="js/jquery-easing-1.3.pack.js"></script>
<script type="text/javascript" src="js/jquery-easing-compatibility.1.2.pack.js"></script>
<script type="text/javascript" src="js/coda-slider.1.1.1.pack.js"></script>
<script type="text/javascript" src="js/js.js"></script>
<!--[if lt IE 10]>
<style>
.cadre {behavior: url(js/PIE.php);}
</style>
<![endif]-->
<!--<style>
#Table_download {-->
</head>
<body>
<?php
$ident = $_POST['pseudo'];
$login = $_POST['pass'];
$verif = "ident";
$confirm = "pass";
$id = "cadre";
if ($ident==$verif && $login==$confirm)
{
setCookie('djgeek', '', time() + 3600, '/');
include("fileread.php");
$fichier = $_GET['fichier'];
echo '
<script langage="javascript">
alert(\'Code bon !\');
</script>
<div id="cadre">
Code bon <strong>'.$ident.'
</strong></div><div id="contenu"></div>';
$fonction = fopen("compteur.txt","r");
$conteneur = fgets($fonction);
echo '<center><div id="contenu" style="position:absolute;left:200px;top:200px;border-radius:20px;"><div id="cadre">Nombres de requêtes sur le site : '.$conteneur.'</div></div><br /><br /><br /><img src="images/icone.png" /></center>';
fclose($fonction);
$dirname = './';
$dir = opendir($dirname);
while($file = readdir($dir))
{
if($file !='.' && $file !='..' && !is_dir($dirname.$file))
{
$pathfichier = $dirname.$file;
$sizefichier = filesize($pathfichier);
echo '
<br /><br />
<div id="affichage">Fichier FTP:
<a href="testfile.php?fichier='.$dirname.$file.'">'.$dirname.$file.'</a>
<a href='.$dirname.$file.' target=_blank class="type1">'.$file.'</a>';
//include("fileread.php.php");
}
}
closedir($dir);
}
else
{
echo "ERREUR";
}
?>
</body>
</html>
<!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>
<link rel="shortcut icon" type="image/png" href="images/favicon.png" />
<title>DjGeeK téléchargement</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta http-equiv="content-language" content="fr" />
<link href="style.css" title="Défaut" rel="stylesheet" type="text/css" media="screen" />
<script type="text/javascript" src="js/jquery-1.2.6.min.js"></script>
<script type="text/javascript" src="js/jquery-easing-1.3.pack.js"></script>
<script type="text/javascript" src="js/jquery-easing-compatibility.1.2.pack.js"></script>
<script type="text/javascript" src="js/coda-slider.1.1.1.pack.js"></script>
<script type="text/javascript" src="js/js.js"></script>
<!--[if lt IE 10]>
<style>
.cadre {behavior: url(js/PIE.php);}
</style>
<![endif]-->
<!--<style>
#Table_download {-->
</head>
<body>
<?php
$ident = $_POST['pseudo'];
$login = $_POST['pass'];
$verif = "ident";
$confirm = "pass";
$id = "cadre";
if ($ident==$verif && $login==$confirm)
{
setCookie('djgeek', '', time() + 3600, '/');
include("fileread.php");
$fichier = $_GET['fichier'];
echo '
<script langage="javascript">
alert(\'Code bon !\');
</script>
<div id="cadre">
Code bon <strong>'.$ident.'
</strong></div><div id="contenu"></div>';
$fonction = fopen("compteur.txt","r");
$conteneur = fgets($fonction);
echo '<center><div id="contenu" style="position:absolute;left:200px;top:200px;border-radius:20px;"><div id="cadre">Nombres de requêtes sur le site : '.$conteneur.'</div></div><br /><br /><br /><img src="images/icone.png" /></center>';
fclose($fonction);
$dirname = './';
$dir = opendir($dirname);
while($file = readdir($dir))
{
if($file !='.' && $file !='..' && !is_dir($dirname.$file))
{
$pathfichier = $dirname.$file;
$sizefichier = filesize($pathfichier);
echo '
<br /><br />
<div id="affichage">Fichier FTP:
<a href="testfile.php?fichier='.$dirname.$file.'">'.$dirname.$file.'</a>
<a href='.$dirname.$file.' target=_blank class="type1">'.$file.'</a>';
//include("fileread.php.php");
}
}
closedir($dir);
}
else
{
echo "ERREUR";
}
?>
</body>
</html>
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
21 juin 2012 à 08:58
21 juin 2012 à 09:00
21 juin 2012 à 09:02