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 :

comment trouver un caractère fantôme qui empêche mon header location ?


Sujet :

Langage PHP

  1. #1
    En attente de confirmation mail
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    347
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 347
    Points : 136
    Points
    136
    Par défaut comment trouver un caractère fantôme qui empêche mon header location ?
    bonjour,

    j'ai ma ligne suivante qui ne fonctionne pas:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    header("Location: home.php");
    car juste avant ça j'ai un caractère d'affiché mais je n'arrive pas à le trouver.

    il affiché par cette ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    require_once("toto.inc.php");
    où toto.inc.php est un fichier UTF8 qui ne contient rien sauf les tag PHP, je l'ai vidé pour trouver/localiser le caractère fantome mais en vain !!!
    quand je passe mon fichier en mode texte (iso je pense), et bun il n'y a plus ce caractère fantômes !!! chercher l'erreur !! moi à 23h50 j'y arrive plus depuis 1h que je tourne en rond !

    j'ai essayé de mettre des @ partout pour escaper les messages mais en vain aussi ! quenéni! ! je n'arrive pas à trouver ce fichu caractère fantôme ! et don PHP me renvoit :
    <br />
    <b>Warning</b>: Cannot modify header information - headers already sent by (output started at d:\easyphp\www\amen\include\dico_fr.inc.php:1) in <b>d:\easyphp\www\amen\submit2.inc.php</b> on line <b>12</b><br />
    je suppose alors que le caractère fantome est <br /> mais je n'ai mis aucun retour à la ligne dans mon fichier includé !!!!

    je tourne en rond , On se court ou ô secour !!!

  2. #2
    Inscrit

    Profil pro
    H4X0|2 @ YourLabs Business Service
    Inscrit en
    Octobre 2006
    Messages
    657
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : H4X0|2 @ YourLabs Business Service
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2006
    Messages : 657
    Points : 909
    Points
    909
    Par défaut
    Il est possible qu'il y ai un retour à la ligne ou un espace avant la première balise PHP dans submit2.inc.php.
    Sinon, c'est de toutes évidence un débugger qu'il faut utiliser.

  3. #3
    En attente de confirmation mail
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    347
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 347
    Points : 136
    Points
    136
    Par défaut ok
    est-il possible de vider le header juste avant de faire un header location ?

  4. #4
    Inscrit

    Profil pro
    H4X0|2 @ YourLabs Business Service
    Inscrit en
    Octobre 2006
    Messages
    657
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : H4X0|2 @ YourLabs Business Service
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2006
    Messages : 657
    Points : 909
    Points
    909
    Par défaut
    A partir du moment où le serveur commence à envoyer du corps de réponse HTTP, il n'est plus temps pour envoyer un en-tête HTTP tel que Location.
    Il faut utiliser la bufferisation de sortie.

  5. #5
    En attente de confirmation mail
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    347
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 347
    Points : 136
    Points
    136
    Par défaut
    je crois avoir le même problème que ça :
    http://ghislain.thau.free.fr/blog/in...ible-character

  6. #6
    Inscrit

    Profil pro
    H4X0|2 @ YourLabs Business Service
    Inscrit en
    Octobre 2006
    Messages
    657
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : H4X0|2 @ YourLabs Business Service
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2006
    Messages : 657
    Points : 909
    Points
    909
    Par défaut
    En CLI avec cat ?

  7. #7
    En attente de confirmation mail
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    347
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 347
    Points : 136
    Points
    136
    Par défaut ok
    ayé j'ai réussi à trouver ou plutôt résoudre !!!!!!!!!!!!!!!!!!!!!!!!
    1h30 de foutu en l'air ce soir !

    voilà comment j'ai résolu :

    je me suis souvenu qu'au départ mon fichier était en ISO (avec un BoM au départ) et que c'est uniquement ensuite que je l'avais passé en UTF8 (j'utilise Dreamweaver cs3).

    Donc il y a dû y avoir une petit chtouille de convertion.Le BoM a peut-être dû rester je pense...
    J'ai donc créé un nouveau fichier en UTF8 dès le départ, et j'ai recopié(par copier/coller) mon ancien contenu dedans et maintenant ça marche !!!

    merci à toi IS_NOT_REALLY_NULL !!


    oufff...!

  8. #8
    En attente de confirmation mail
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    347
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 347
    Points : 136
    Points
    136
    Par défaut
    Le BOM késako, ça peut aider :

    Source ADOBE Dreamweaver CS3 :
    If you select Unicode (UTF‑8) as a default encoding, you can include a Byte Order Mark (BOM) in the document by selecting the Include Unicode Signature (BOM) option.

    A BOM is 2-4 bytes at the beginning of a text file that identifies a file as Unicode, as well as the byte order of the following bytes. Because UTF‑8 has no byte order, adding a UTF‑8 BOM is optional. For UTF‑16 and UTF‑32, it is required.
    en même temps j'ai appris que UTF16 et UTF32 existait ! ça m'aura porté conseil avant la nuit ! hop résolu !

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 21/10/2014, 15h48
  2. Comment trouver si un firewall réside sur mon poste ?
    Par ZeKiD dans le forum Sécurité
    Réponses: 5
    Dernier message: 17/08/2011, 13h16
  3. Qu'est-ce qui empêche mon shader de se compiler ?
    Par supergrey dans le forum DirectX
    Réponses: 0
    Dernier message: 10/03/2010, 14h32
  4. mon header location ne marche pas
    Par 123quatre dans le forum Langage
    Réponses: 1
    Dernier message: 29/12/2007, 16h46
  5. Mon header("Location: page.php"); ne fonctionne pa
    Par Flushovsky dans le forum Langage
    Réponses: 17
    Dernier message: 24/03/2006, 23h49

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