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 :

PB Header


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 24
    Par défaut PB Header
    bonjour a tous

    je bloque sur un souci de header, voici le message que j'obtient :

    Warning: Cannot modify header information - headers already sent by (output started at c:\documents and settings\sebastien gueant\bureau\salfparc\salfparc\site\index.php:56) in c:\documents and settings\sebastien gueant\bureau\salfparc\salfparc\site\code\model\verif_ajout_model.php on line 4


    j'ai essayer plusieurs chose mais le problème persiste.

    Voici les codes des 2 fichiers

    index.php :
    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
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
     
    <?session_start();?>
    <?php
    header("Cache-Control: no-cache");
    header("Pragma: no-cache");
    if (isset($_POST['i']))
    {
    $choix = $_POST['i'];
    }
    else
    {
    $choix = $_GET['i'];
    }
    switch ($choix)
    {
    // PAGE QUI CONCERNE AGENCE ET SERVICE 				
    			case "gestion_model";
    				$a = "code/model/gestion_model.php";
    				break;
    			case "ajout_model";
    				$a = "code/model/ajout_model.php";
    				break;
    			case "verif_ajout_model";
    				$a = "code/model/verif_ajout_model.php";
    				break;
    			case "gestion_matos";
    				$a = "code/materiel/gestion_matos.php";
    				break;
    			case "ajout_matos";
    				$a = "code/materiel/ajout_modification/ajout_matos.php";
    				break;
    			case "select_modif_model";
    				$a = "code/model/modif_model/select_modif_model.php";
    				break;
    			case "modif_model";
    				$a = "code/model/modif_model/modif_model.php";
    				break;
    			case "verif_ajout_matos";
    				$a = "code/materiel/ajout_modification/verif_ajout_matos.php";
    				break;
    			case "visualisation";
    				$a = "code/materiel/ajout_modification/visualisation/visu.php";
    				break;	
    			case "modification_matos";
    				$a = "code/materiel/ajout_modification/modification_matos.php";
    				break;
    			default:
    				$a= "informations/bienvenue.php";
    				break;
    	   }
     
    ?>
     
    <!-- Ajout de la feuille de style -->
    <link href="design/style.css" rel="stylesheet" type="text/css">
    <!-- Ajout du fichier fonction.js qui contient toute les fonctions  javascript -->
    <script src="code/lib/fonction.js"></script>
    <?php
    //session_start();
    //Gestion du cache des navigateurs
    //header("Cache-Control: no-cache");
    //header("Pragma: no-cache");
    //inclusion du fichier connexion.php qui contient toute les parametres de connexion à la base
    include_once (dirname(__file__))."/code/parametre/connexion.php";
    //initialisation des parametres des fenetre
    $ttotal = 960 ;
    $tfenetre = ($ttotal - 157) -20;
    //affichage des menu et de la page principal avec valeur par defaut $page = "bienvenue.htm"
    ?>

    verif_ajout_model.php

    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
     
     
    <?php
    if (!isset($_POST['Submit'])) {
    $code = $_POST['code'];
    header("Location: index.php?i=ajout_model&code=$code");
    exit;}
     
    //verification si un model existe deja avec le meme nom
    $res = mysql_query('SELECT nom FROM model WHERE nom="'.$_POST['nom'].'"');
    if (mysql_num_rows($res) != 0) {
    $code = $_POST['code'] ;
    header("Location: index.php?i=ajout_model&code=$code&ajout_no=erreur");
    exit;
    }
     
     
    //RECUPERATION DE L'IDTYPE
    $req_idtype = 'SELECT idtype FROM type_matos WHERE code="'.$_POST['code'].'"';
    $res_idtype = mysql_query($req_idtype);
    $info = mysql_fetch_array($res_idtype);
    $_POST['ce_model_type'] = $info['idtype'];
    //INCLUSION DU FICHIER D'AJOUT DE REQUETE
    $lien = "code/model/req_model_inc/".$_POST['code']."_ajout_inc.php";
    include_once($lien);
    header("Location: index.php?i=ajout_model&ajout_ok=ajouter"); 
    exit;
    ?>

    voila j'aurai besoin de vos lumieres

    Merci d'avance a tous

  2. #2
    Membre expérimenté
    Inscrit en
    Septembre 2005
    Messages
    185
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 185
    Par défaut
    slt ,toujours le même problème.
    faut rien n'envoyer au navigateur avant ta redirection (pas de ligne vide , pas de code html)
    Si t'avais lu la faq t'aurai pas eu ce problème.Mais pour cette fois t'es pardonné.

  3. #3
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 24
    Par défaut
    oui mais justement je n'envoi rien avant, regarde d'apres les codes, enfin je débute donc il est possible que je dise une connerie

  4. #4
    Membre expérimenté
    Inscrit en
    Septembre 2005
    Messages
    185
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 185
    Par défaut
    j'ai l'impression que t'a une ligne vide. il fau l'a faire disparaitre.

  5. #5
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 24
    Par défaut
    bon j'ai modifier plusieurs chose, mais toujours un probleme de headers et je ne vois vraiment pas ou est le souci :

    voici l'erreur

    Warning: Cannot modify header information - headers already sent by (output started at c:\documents and settings\sebastien gueant\bureau\salfparc\salfparc\site\index.php:57) in c:\documents and settings\sebastien gueant\bureau\salfparc\salfparc\site\code\model\verif_ajout_model.php on line 4


    et voici l'endroit ou se trouve le souci d'apres lerreur
    index.php

    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
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
     
    <?session_start();?>
    <?php
    header("Cache-Control: no-cache");
    header("Pragma: no-cache");
    if (isset($_POST['i']))
    {
    $choix = $_POST['i'];
    }
    else
    {
    	if (isset($_GET['i']))
    	{
    	$choix = $_GET['i'];
    	}
    }
    switch ($choix)
    {
    // PAGE QUI CONCERNE AGENCE ET SERVICE 				
    			case "gestion_model";
    				$a = "code/model/gestion_model.php";
    				break;
    			case "ajout_model";
    				$a = "code/model/ajout_model.php";
    				break;
    			case "verif_ajout_model";
    				$a = "code/model/verif_ajout_model.php";
    				break;
    			case "gestion_matos";
    				$a = "code/materiel/gestion_matos.php";
    				break;
    			case "ajout_matos";
    				$a = "code/materiel/ajout_modification/ajout_matos.php";
    				break;
    			case "select_modif_model";
    				$a = "code/model/modif_model/select_modif_model.php";
    				break;
    			case "modif_model";
    				$a = "code/model/modif_model/modif_model.php";
    				break;
    			case "verif_ajout_matos";
    				$a = "code/materiel/ajout_modification/verif_ajout_matos.php";
    				break;
    			case "visualisation";
    				$a = "code/materiel/ajout_modification/visualisation/visu.php";
    				break;	
    			case "modification_matos";
    				$a = "code/materiel/ajout_modification/modification_matos.php";
    				break;
    			default:
    				$a= "informations/bienvenue.php";
    				break;
    	   }
    ?>
    <!-- Ajout de la feuille de style -->
    <link href="design/style.css" rel="stylesheet" type="text/css">
    <!-- Ajout du fichier fonction.js qui contient toute les fonctions  javascript -->
    <script src="code/lib/fonction.js"></script>
    <?php
    //session_start();
    //Gestion du cache des navigateurs
    //header("Cache-Control: no-cache");
    //header("Pragma: no-cache");
    //inclusion du fichier connexion.php qui contient toute les parametres de connexion à la base
    include_once (dirname(__file__))."/code/parametre/connexion.php";
    //initialisation des parametres des fenetre
    $ttotal = 960 ;
    $tfenetre = ($ttotal - 157) -20;
    //affichage des menu et de la page principal avec valeur par defaut $page = "bienvenue.htm"
    ?>
    <html>
    <head><title>SALF PARC</title></head>
    <body>
    <table width="<?php echo $ttotal ; ?>" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td width="160"><?php include_once (dirname(__file__))."/menu/menu1.php"; ?></td>
        <td width="<?php echo $tfenetre ?>" valign="top" align="center" rowspan="4"><?php include_once (dirname(__file__))."/".$a ; ?>
        </td>
      </tr>
      <tr>
        <td><?php include_once (dirname(__file__))."/menu/menu2.php"; ?></td>
      </tr>
      <tr>
        <td><?php include_once (dirname(__file__))."/menu/menu3.php"; ?></td>
      </tr>
    <tr>
    <td><?php include_once (dirname(__file__))."/menu/menu4.php"; ?></td>
    </tr>
    </table>
    <table width="960" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td height="42" valign="bottom" background="<?php echo (dirname(__file__))."/images/footer.jpg"; ?>"><div align="right" class="blanc_pieddepage">&copy; SALF 2006 </div></td>
      </tr>
    </table>
    </body>
     
    </html>
    d'apres l'erreur les lignes sont celles la
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <!-- Ajout de la feuille de style -->
    <link href="design/style.css" rel="stylesheet" type="text/css">
    <!-- Ajout du fichier fonction.js qui contient toute les fonctions  javascript -->
    <script src="code/lib/fonction.js"></script>
    Merci d'avance a tous

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    97
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 97
    Par défaut
    ton header doit être le seul retour d'une action.

    par exemple tu auras l'erreur que tu viens de nous siter si tu fais un

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    echo "pouet";
    header("location:./index.php");

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    97
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 97
    Par défaut
    ail ail ail....
    J'avais pas vu ça non plus....
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    switch($choix{
        case "premier choix : // et ui c'est deux points et pas point virgule... grrr
            $a = ......etc
    }

  8. #8
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 24
    Par défaut
    oui je suis d'accord qu'il ne faut rien avant le header, mais regardez ou est indiquer l'erreur c'est au niveau du chargement du javascript, et avant le header il n'y a rien

  9. #9
    Membre chevronné Avatar de gofono_bass
    Inscrit en
    Décembre 2005
    Messages
    383
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Décembre 2005
    Messages : 383
    Par défaut
    juste au cas ou... essaie:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?php session_start();
    header("Cache-Control: no-cache");
    header("Pragma: no-cache"); 
    ..
    et pas d'espace ni ligne vide avant l'ouverture de la balise php <?php

  10. #10
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 24
    Par défaut
    non , toujours la meme erreur a la meme ligne , celle de l'appel du fichier javascript , je désespere

  11. #11
    Membre expérimenté
    Inscrit en
    Septembre 2005
    Messages
    185
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 185
    Par défaut
    TiNoUcHe, j'ai éssayé de nouveau ton script il marche.Alors ce que je te propose c'est de faire un copier du contenu de ce fichier avec la modif de gofono_bass , supprimer le fichier ,le recréer et y coller le contenu du fichier precedement suppimer.Il marchera tu veras.
    Courage

  12. #12
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 24
    Par défaut
    j'ai effacer le fichier et recréer avec le meme code corriger, mais toujours pareil. En fait la page marche, mais qd je navigue sur le site, et que je doit mettre à jour le header c'est a ce moment la qu'il me met la meme erreur

  13. #13
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    97
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 97
    Par défaut
    Peut-être que le problème ne vient pas de index.php...
    Montre nousle code de verif_ajout_model.php pour voir si c'est pas la le problème.

  14. #14
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Février 2006
    Messages : 30
    Par défaut
    essaye de placer ton 'session start' sous 'header(..)' il est possible que ce soit ca qui gene.
    De plus, pourquoi as-tu placer ton session star et ton header une seconde fois sous l'appel de ta .js? il est possible que ce soit ca qui produit ton erreur.
    bon courage

  15. #15
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 24
    Par défaut
    toujours pareil en déplacant le session start

    voice le code du fichier verif_ajout_model.php

    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
    <?php
    if (!isset($_POST['Submit'])) {
    $code = $_POST['code'];
    header("Location: index.php?i=ajout_model&code=$code");
    exit;
    }
     
    //verification si un model existe deja avec le meme nom
    $res = mysql_query('SELECT nom FROM model WHERE nom="'.$_POST['nom'].'"');
    if (mysql_num_rows($res) != 0) {
    $code = $_POST['code'] ;
    header("Location: index.php?i=ajout_model&code=$code&ajout_no=erreur");
    exit;
    }
     
     
    //RECUPERATION DE L'IDTYPE
    $req_idtype = 'SELECT idtype FROM type_matos WHERE code="'.$_POST['code'].'"';
    $res_idtype = mysql_query($req_idtype);
    $info = mysql_fetch_array($res_idtype);
    $_POST['ce_model_type'] = $info['idtype'];
    //INCLUSION DU FICHIER D'AJOUT DE REQUETE
    $lien = "code/model/req_model_inc/".$_POST['code']."_ajout_inc.php";
    include_once($lien);
    header("Location: index.php?i=ajout_model&ajout_ok=ajouter"); 
    exit;
    ?>
    Je ne vois vraiment pas de où cela peut venir


    sous l'appel de la .js , c'etait pour des tests ,mais la c'est en commentaires

  16. #16
    Membre expérimenté Avatar de funckfot
    Profil pro
    Étudiant
    Inscrit en
    Mars 2006
    Messages
    221
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2006
    Messages : 221
    Par défaut
    Citation Envoyé par Nizarazu
    essaye de placer ton 'session start' sous 'header(..)' il est possible que ce soit ca qui gene.
    je ne pense pas du tout que se soit sa!!

  17. #17
    Membre expérimenté
    Inscrit en
    Septembre 2005
    Messages
    185
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 185
    Par défaut
    Citation Envoyé par TiNoUcHe
    j'ai effacer le fichier et recréer avec le meme code corriger, mais toujours pareil. En fait la page marche, mais qd je navigue sur le site, et que je doit mettre à jour le header c'est a ce moment la qu'il me met la meme erreur
    envoie moi le code qui doit mettre à jour le header

  18. #18
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 24
    Par défaut
    le code qui met a jour c'est celui que j'ai mis précédement, le code du fichier verif_ajout_model.php, il est en page 1 de mon post

  19. #19
    Membre émérite
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2005
    Messages : 774
    Par défaut
    tu peux aussi essayer de voir dans les fichiers q tu inclus ; question de voir si ya pas de blanc en fin de fichier

Discussions similaires

  1. [Réseau] Headers vers un serveur http
    Par gexti dans le forum Entrée/Sortie
    Réponses: 5
    Dernier message: 04/05/2004, 14h58
  2. __declspec(dllexport) dans mon fichier header mais...?
    Par Jasmine dans le forum Autres éditeurs
    Réponses: 1
    Dernier message: 03/03/2004, 18h00
  3. mise en page (Header and Footer) en XML-XSL.
    Par christine dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 01/03/2004, 16h31
  4. [C#]dimension fixe footer et header datagrid
    Par Dos dans le forum ASP.NET
    Réponses: 2
    Dernier message: 24/01/2004, 17h45
  5. [MFC] image dans un header de CListCtrl
    Par tut dans le forum MFC
    Réponses: 3
    Dernier message: 11/06/2003, 15h26

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