Forum de discussion et d'aide au php
Vous n'êtes pas identifié.
|
Regles d'utilisation des forums : pensez à toujours les respecter si vous désirez obtenir des réponses rapides. FAQ : pensez à toujours chercher dedans si la réponse à votre question est dedans. Proposez vos news : si vous avez un evenement à annoncer le chat : venez discuter de php. |
||
Pages: 1
Bonjour,
au vu des messages qui traitent de ce sujet, je me doute que c'est une erreur fréquente mais étant tellement débutant, je n'arrive pas à comprendre mon erreur.
Voilà, j'ai ce fameux message d'erreur :
Warning: Cannot modify header information - headers already sent by .... etc...
Le code php est bon quand je fais comme ça :
<?php
$DIR_meteoalerte = $_POST['nom_DIR_meteoalerte'];
$ville_levercouchersoleil = $_POST['ville_levercouchersoleil'];
// Enregistre un cookie sur l'ordinateur : région meteoalerte en page d'accueil
setcookie("cookie_DIR_meteoalerte", $DIR_meteoalerte,time()+3600*24*365*10,"/","") ;
// // Enregistre un cookie sur l'ordinateur : ville pour lever et coucher de soleil en page d'accueil
setcookie("cookie_ville_levercouchersoleil", $ville_levercouchersoleil,time()+3600*24*365*10,"/","") ;
echo 'Vos préférences sont enregistrées. ';
echo '<br>';
echo '<br>';
echo '<br>';
echo 'Vos préférences seront pris en compte au prochain affichage de la page d\'accueil. ';
echo 'Vous pouvez aussi actualiser de suite avec la touche F5';
echo '<br>';
echo '<br>';
echo '<form>';
echo '<input type=\'button\' value=\'Fermer\' onClick=\'window.self.close();\'>';
echo '</form>';
?>
Mais dès que je veux mettre en forme le texte avec un css, plus rien ne marche. Voici le code enrichi :
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="style.css"/>
<title>Validation Préférences</title>
</head>
<body>
<div id=cadre>
<?php
$DIR_meteoalerte = $_POST['nom_DIR_meteoalerte'];
$ville_levercouchersoleil = $_POST['ville_levercouchersoleil'];
// Enregistre un cookie sur l'ordinateur : région meteoalerte en page d'accueil
setcookie("cookie_DIR_meteoalerte", $DIR_meteoalerte,time()+3600*24*365*10,"/","") ;
// // Enregistre un cookie sur l'ordinateur : ville pour lever et coucher de soleil en page d'accueil
setcookie("cookie_ville_levercouchersoleil", $ville_levercouchersoleil,time()+3600*24*365*10,"/","") ;
?>
Vos préférences sont enregistrées.
<br>
Vos préférences seront pris en compte au prochain affichage de la page d'accueil.
Vous pouvez aussi actualiser de suite avec la touche F5';
<br>
<form>
<input type='button' value='Fermer' onClick='window.self.close();'>
</form>
</div>
</body>
</html>
Pourquoi ça ne marche pas avec ce message "Warning: Cannot modify header information" ?
Comment écrire le code pour que ça fonctionne ?
Ou sinon comment puis-je faire pour avoir ma feuille de style qui s'applique au texte ?
Merci encore pour votre aide à chaque fois précieuse
Hors ligne
salut,
le problème est que dès que tu envoies écris du code html, les header sont envoyés et tu ne peux plus en envoyer d'autres.
il faut donc que tu reportes ta section de php pour mettre un cookie avant tout autre texte
en gros
<?php // set cookie ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link rel="stylesheet" type="text/css" href="style.css"/> <title>Validation Préférences</title> </head> etc... <?php // autre code php ?> autre html
Hors ligne
Super !
Merci beaucoup, ça marche, je pensais que ce n'était pas possible.
Encore merci !
Hors ligne