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 :

Cannot modify header information - headers already sent by


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Avril 2003
    Messages
    45
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 45
    Par défaut Cannot modify header information - headers already sent by
    Bonjour à tous

    je suis chez 1&1 pour l"hébergement de mes sites, suite a un upgrade de services chez eux, j'ai un message d'erreur sur tous mes formulaires de contact.

    http://www.gite-la-tronchere.fr/cont...e-puy-dome.php
    http://www.planete-sports.fr/inscrip...ultisports.php
    http://www.bergheaud.fr/contact.php

    et il y en a d'autres...

    avez vous une idée pour régler ce PB qui semble être identique sur chacun de mes site car j'ai une bonne dizaine de formulaires dans ce cas!

    merci de votre aide

  2. #2
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Oui, c'est assez simple : il faut corriger le code.
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  3. #3
    Invité
    Invité(e)
    Par défaut
    Je dirais même plus : le code, corriger il faut.

    Nous le montrer, bien serait.

    Une idée ? Oui.
    Vérifier dans TOUS tes fichiers (en particuliers ceux inclus dans d'autres), qu'il n'y a pas de code HTML (même un simple espace) avant l'instruction session_start().

  4. #4
    Membre averti
    Inscrit en
    Avril 2003
    Messages
    45
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 45
    Par défaut
    reconnaissant, je suis

    Bien sur il y a plein de truc avant session_start(), mais ça fonctionnait bien avant.
    Vous êtes en train de me dire qu'il faut que je modifie tous les formulaires? même ceux qui fonctionnent depuis des années?

    voici un exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <?php
    $cryptogramme = TRUE;
    $format = 'html';
    $foncmail = 'mail';
    $hostsmtp = '';
    $portsmtp = '25';
    $authsmtp = true; 
    $usersmtp = ''; 
    $passmtp = '';
    session_start();
    $included_files = get_included_files();
    require(dirname(__FILE__).'/include/fonctions.php');
    if(VerifUrl($_SERVER['REQUEST_URI'], $included_files, dirname(__FILE__))){
    ?>
    le simple fait de remonter cette instruction solutionnerait le pb?

    comme ceci?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <?php
    session_start();
    $cryptogramme = TRUE;
    $format = 'html';
    $foncmail = 'mail';
    $hostsmtp = '';
    $portsmtp = '25';
    $authsmtp = true; 
    $usersmtp = ''; 
    $passmtp = '';
    $included_files = get_included_files();
    require(dirname(__FILE__).'/include/fonctions.php');
    if(VerifUrl($_SERVER['REQUEST_URI'], $included_files, dirname(__FILE__))){
    ?>
    http://www.bergheaud.fr/contact.php
    marche po

  5. #5
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Il faut lire l'erreur : ton affichage commence dans index.php donc c'est au début de ce fichier que doit être ton session_start().

    A la remarque "ça marchait avant" : ça peut marcher mais être plein d'erreurs, tu t'en rends compte maintenant que ton hebergeur t'affiche les erreurs. PHP est arrangeant avec nombre de situations anormales.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  6. #6
    Membre averti
    Inscrit en
    Avril 2003
    Messages
    45
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 45
    Par défaut
    Ok je comprend mieux.
    Le code qui se trouve juste au dessus est justement le début de mon index.php
    J'ai eu beau le modifier en mettant le session_start() tout en haut mais j'ai toujours le même message d'erreur.
    J'ai encodé mon fichier en UTF-8 sans BOM mais pas mieux...

  7. #7
    Invité
    Invité(e)
    Par défaut
    Il ne suffit pas de "remonter" l'instruction dans le fichier lui-même, mais c'est déjà une bonne chose.
    Il fautr vérifier les includes de fichiers :
    - passages à la ligne ou espace avant <?php en début de fichier ?
    - passages à la ligne après ?> en fin de fichier ? (astuce pour éviter ça : supprimer simplement le ?> de fin dans le fichier)
    - echo ? avant session_start() ?
    - plusieurs session_start() (dans plusieurs fichiers inclus les uns dans les autres) ?
    - ...

    Et, sinon :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <?php if(session_id()=='') { session_start(); }
    // ........
    ?>

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 04/10/2009, 14h15
  2. Réponses: 2
    Dernier message: 20/08/2009, 22h27
  3. Réponses: 1
    Dernier message: 17/07/2007, 11h49
  4. Réponses: 4
    Dernier message: 16/07/2007, 13h42
  5. Réponses: 5
    Dernier message: 04/09/2006, 15h13

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