header() et setCookie() ne marche pas sur un compte free
Posté : 16 sept. 2005, 09:59
bonjour,
sur mon site free, lorsque j'essaie d'utiliser un cookie, il me renvoie l'erreur suivante:
Je ne comprend pas. Voila le code:
sur mon site free, lorsque j'essaie d'utiliser un cookie, il me renvoie l'erreur suivante:
pourtant en local ca marche nikel et comme code ya pas plus simple.Warning: Cannot modify header information - headers already sent by (output started at /var/www/free.fr/e/3/skin787/cookie.php:7) in /var/www/free.fr/e/3/skin787/cookie.php on line 36
Je ne comprend pas. Voila le code:
<html>
<head>
<title>formulaire</title>
</head>
<body>
<?php
function checkEmail($email)
{
if (!preg_match("/^[a-zA-Z0-9]+[a-zA-Z0-9._-]*@[a-zA-Z0-9_-]+[.][a-zA-Z0-9][a-zA-Z0-9]$/" , $email)) {
return false;
}
return true;
}
if($_COOKIE['nom']!='' && $_COOKIE['prenom']!='' && $_COOKIE['email']!='')
{
echo 'vous etes: <font color="#ff0000">'.$_COOKIE['nom'].' '.$_COOKIE['prenom'].'</font> avec l\'adresse mail: <font color="#ff0000">'.$_COOKIE['email'].'</font><br/>';
}
else
{
if($_POST['nom']!='' && $_POST['prenom']!='' && checkEmail($_POST['email']) &&
$_POST['login']!='' && $_POST['pass']!='')
{
echo 'votre nom: '.$_POST['nom'].'<br/>';
echo 'votre prenom: '.$_POST['prenom'].'<br/>';
echo 'votre email: '.$_POST['email'].'<br/>';
echo 'votre login: '.$_POST['login'].'<br/>';
echo 'votre pass: '.$_POST['pass'].'<br/>';
//dans le cas ou les infos sont bonnes, on inscrit des cookies
$expire = 365*24*3600;
if($_COOKIE['nom']=='' && $_COOKIE['prenom']=='' && $_COOKIE['email']=='')
{
setcookie('nom',$_POST['nom'],time()+$expire);
setcookie('prenom',$_POST['prenom'],time()+$expire);
setcookie('email',$_POST['email'],time()+$expire);
}
}
else
{
echo '<font color="#ff0000">';
if($_POST['nom']=='') echo 'veuillez entrer votre nom!<br/>';
if($_POST['prenom']=='') echo 'veuillez entrer votre prenom!<br/>';
if(!checkEmail($_POST['email'])) echo 'veuillez entrer un email valide!<br/>';
if($_POST['login']=='') echo 'veuillez entrer votre login!<br/>';
if($_POST['pass']=='') echo 'veuillez entrer votre pass!<br/>';
echo '</font>';
?>
<form method="post" action="cookie.php" enctype="multipart/form-data">
votre nom: <input type="text" name="nom" value=<? echo '"'.$_POST['nom'].'"';?>/><br/>
votre prenom: <input type="text" name="prenom" value=<? echo '"'.$_POST['prenom'].'"';?>/><br/>
votre email: <input type="text" name="email" value=<? echo '"'.$_POST['email'].'"';?>/><br/>
votre login: <input type="text" name="login" value=<? echo '"'.$_POST['login'].'"';?>/><br/>
votre pass: <input type="password" name="pass" value=<? echo '"'.$_POST['pass'].'"';?>/><br/>
<input type="submit" value="Go"/>
</form>
<?php
}
}
?>
</body>
</html>
voila j'espere que qq peut m'aider merci