IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Erreur à l'utilisation de la fonction header


Sujet :

Langage PHP

  1. #1
    Membre régulier Avatar de paradeofphp
    Inscrit en
    Décembre 2005
    Messages
    313
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 313
    Points : 94
    Points
    94
    Par défaut Erreur à l'utilisation de la fonction header
    Dans mon site je travaille avec les pseudo-frames.
    le code de ma page index.php est le suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    <?php session_start();?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml"><head>
    <?php 	require ('includes/link.inc.php');
     		include ('../includes/mysql.inc.php');
    ?>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <link rel="stylesheet" href="../styles/css.css" type="text/css" />
    <title>:: <?php echo $title ?> ::</title>
    </head>
    <body>
    <!-- En tête de la page -->
    <div id="header"><?php include('templates/header.inc.php'); ?></div>
    <!-- Menu au centre -->
    <div id="middle_menu"><?php include('templates/middle_menu.inc.php'); ?></div>
    <div id="contenu">
    	<!-- Menu à gauche -->
    	<div id="navcol"><?php include('templates/left_menu.inc.php'); ?></div>
    	<?php 
    		if(!isset($_GET["id"]))
    		{
    			echo"<!-- Menu à droite -->\n";
    			echo"	<div id='sidecol'>"; 
    				include('templates/right_menu.inc.php');
    			echo"</div>\n";
    		}
    	?>
    	<!-- Centre de la page  -->
    	<div id="main"><?php include($page_path); ?></div>
    </div>
    <!-- Pied de page -->
    <div id="foot"><?php include('templates/footer.inc.php'); ?></div>
    </body> 
    </html>

    Dans la page autentification de mon site, si l'utilisateur saisi les bon paramètres de connexion, il a le message d'erreur suivant :

    Warning: Cannot modify header information - headers already sent by (output started at c:\program files\easyphp1-8\www\cardshow\clubcsa\index.php:4) in c:\program files\easyphp1-8\www\cardshow\clubcsa\includes\Trait_authentif.php on line 39

    cette ligne 39 contient le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    header("Location:index.php");
    Alors j'ai essayé d'afficher le code html de la page index.php en utilisant la méthode echo et j'ai vérifié que je n'ai aucun espace avant la balise php mais j'ai toujours le meme problème. je ne sais pas si vous avez une idée sur l'origine de ce problème. Merci

  2. #2
    Membre expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Points : 3 377
    Points
    3 377
    Par défaut
    Tu envoies des caractères au navigateur dès la seconde ligne...
    RIEN ne doit être envoyé avant le header.

    http://php.developpez.com/faq/?page=...s_already_sent

  3. #3
    Membre régulier Avatar de paradeofphp
    Inscrit en
    Décembre 2005
    Messages
    313
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 313
    Points : 94
    Points
    94
    Par défaut
    Salut,
    Donc ma page index.php ne doit pas comporter de balises HTML ?

  4. #4
    Membre expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Points : 3 377
    Points
    3 377
    Par défaut
    Citation Envoyé par paradeofphp
    Donc ma page index.php ne doit pas comporter de balises HTML ?
    Pas avant le header, c'est le principe.

  5. #5
    Membre régulier Avatar de paradeofphp
    Inscrit en
    Décembre 2005
    Messages
    313
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 313
    Points : 94
    Points
    94
    Par défaut
    mais comme jé dit, j'utilise les pseudo-frame é cette page index.php affiche le contenu de la page demandée. je ne sais pas si cette page doit avoir une autre structure pour regler ce problème

  6. #6
    Membre expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Points : 3 377
    Points
    3 377
    Par défaut
    Citation Envoyé par paradeofphp
    mais comme jé dit, j'utilise les pseudo-frame é cette page index.php affiche le contenu de la page demandée. je ne sais pas si cette page doit avoir une autre structure pour regler ce problème
    Je ne vois pas trop le rapport. Le problème vient du fait que tu veux faire une redirection après avoir affiché quelque chose. Pour le régler, ou bien tu envoies ton header avant tout affichage, ou bien si tu dois absolument avoir affiché quelque chose, tu utilises un autre moyen de redirection. Tu peux aussi utiliser la bufferisation en sortie, mais comme je ne te conseille pas cette solution, tu chercheras par toi-même si tu veux l'appliquer.

    PS attention à ton français...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Utilisation de la fonction "header"
    Par yesil08 dans le forum Langage
    Réponses: 6
    Dernier message: 22/06/2009, 13h02
  2. [PHP 5.0] Utilisation de la fonction header
    Par cyrilherve dans le forum Langage
    Réponses: 2
    Dernier message: 13/03/2009, 11h40
  3. [PHP 5.0] Utilisation de la fonction header
    Par cyrilherve dans le forum Langage
    Réponses: 2
    Dernier message: 12/03/2009, 15h59
  4. Utilisation de la fonction header
    Par -Neo- dans le forum Langage
    Réponses: 7
    Dernier message: 04/09/2008, 10h50
  5. [TortoiseSVN] Erreur d'utilisation de la fonction merge
    Par Mathieu.Nanoux dans le forum Subversion
    Réponses: 4
    Dernier message: 08/08/2008, 11h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo