help [cookie] - PHP - Programmation
Marsh Posté le 02-10-2003 à 18:48:31
ben c'est super simple: tu dois balancer ton cookie (qui doit faire partie du header) avant ton premier bout de code HTML. Donc tu dois faire ton setcookie avant la ligne 16
Marsh Posté le 02-10-2003 à 18:52:01
en fait dans ce cas-ci, tu devrais juste inverser ton test ($num) et donc les blocs de réponse possibles, et ça devrait être ok.
Ah au fait, il manque 2 bloc importants dans ton message: <head> (pour y taper un titre et ton tag <meta> ) ainsi que <body> (pour tout le reste).
Marsh Posté le 02-10-2003 à 18:53:56
ah crotte je me fais avoir comme un débutant
bon en fait PHP a vu une sortie HTML avant ton setcookie et il n'a pas aimé (même s'il est dans un else, je sais c'est con)
tu dois donc toujours placer tes setcookie avant toute sortie HTML.
Marsh Posté le 02-10-2003 à 19:03:15
ben c'est quand tu génères du HTML, genre la commande echo dans ta page, ou encore quand tu poses la balise ?> pour mettre du pur HTML dans ton code (genre à la dernière ligne de ton source).
Marsh Posté le 02-10-2003 à 19:06:44
mé eu c pas juste jui obligé davoir du html avant c dasn un pseudo frame
Marsh Posté le 02-10-2003 à 23:15:08
i font comment sur les autre site ils ont bien du html avant da mettre leur cookies ???
Marsh Posté le 02-10-2003 à 23:38:11
ben non justement, techniquement le cookie fait partie du header de ta page web. Donc en tête. Donc tu dois balancer ton cookie avant ta page web.
Marsh Posté le 02-10-2003 à 18:43:16
voila je debute en php et jai un probleme avec les cookies
voila ma page
<?
include('config.php');
$db = mysql_connect($mysql_host,$mysql_user,$mysql_password) or die ("erreur de connexion" );
mysql_select_db($mysql_base,$db) or die ("erreur de connexion base" ); //connection a la base de donné
$sql= mysql_query("SELECT * FROM sl_user WHERE pseudo='$user' and pass='$pwd'" ) or die ("connection mysql impossible" );
$num=mysql_num_rows($sql); //on veriffi si luser et le pass sont bon
if(!$num)
{
echo "<center>Veuillez vérifier vos données</center>"; // message derreur
}
else // sinon on valide
{
session_register("user" );
/// cookie a inserer ici ///////////////////////////////////
$sess_nom = session_name();
$sess_id = session_id();
echo "<center>$user vous ete maintenat loger !</center>";
}
///redirection
?>
<meta http-equiv="refresh" content="10; URL=/index.php">
voila g deja essayer avec
setcookie("unsername","$user",time()+365 * 24 * 3600 , "/" );
mais sa maffiche
Warning: Cannot add header information - headers already sent by (output started at d:\prog\easyphp\www\index.php:16) in d:\prog\easyphp\www\espace membre.php on line 16
lpa vous ete maintenat loger !
a savoir que la page saffiche dans une pseudo frame !
que faire