Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
851 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  un 'blanc' avant un include

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

un 'blanc' avant un include

n°2056329
kraken pol​aire
11/11 piétienement
Posté le 12-02-2011 à 20:40:01  profilanswer
 

bonjour la communauté,
 
un ptit problème que j'ai pour la 1ère fois ; j'ai un include comme suit qui récupère une partie de ma page :
 
<?php include utf8_decode($page);?>
 
il va donc chercher un fichier php, pas de soucis la recup est bonne. mais juste avant l'affichage de ce qui doit être récupérer, je trouve un trouve un espace vide de la taille d'un caractère qui forcement n'est pas voulu. Ca a la taille d'une balise <p>, il y rien dedans, ça me repousse tout les éléments qui suivent comme une ligne de texte normale et dans firebug, dans l'inspecteur html, il y a aussi espace (une ligne sans rien)...
Et même s'il n'y a rien, firebug (avec click droit sur l'élément ; la ligne vide) m'autorise à le supprimer et tout redeviens cool.
 
Mes fichiers sont tous les 2 en UTF8, et avant de faire mon include (cad quand tout était sur la même page il n'y avait pas de problème);
 
help wanted. merci


---------------
Aliens Vs Predator c'est avant tout l'histoire d'une rencontre.
mood
Publicité
Posté le 12-02-2011 à 20:40:01  profilanswer
 

n°2056336
gatsu35
Blablaté par Harko
Posté le 12-02-2011 à 21:38:05  profilanswer
 

faut encoder les fichiers en UTF8 sans BOM.
En fait ce n'est pas un espace, mais un vrai caractère que tu rencontre mais non affiché :D
 
tu utilises quoi comme editeur ?  
et puis il sert à rien ton utf8_decode après ton include.


---------------
Blablaté par Harko
n°2056338
kraken pol​aire
11/11 piétienement
Posté le 12-02-2011 à 22:08:39  profilanswer
 

dac, j vais essayer ça demain.
 
pour le decode, tu veux dire qu'avec des fichiers en utf8 sans BOM dès le départ, il est inutile? ou dans tous les cas?


---------------
Aliens Vs Predator c'est avant tout l'histoire d'une rencontre.
n°2056340
gatsu35
Blablaté par Harko
Posté le 12-02-2011 à 22:19:51  profilanswer
 

tu fais un UTF8_Decode sur le nom du fichier, ça serait après l'include qu'il faudrait le faire. Mais ce n'est pas possible puisque include est une fonction particulière qui ne retourne pas du texte mais inclus directement un fichier.
Et puis c'est inutile de toute facon.


---------------
Blablaté par Harko
n°2056396
billgatesa​nonym
Posté le 13-02-2011 à 10:53:13  profilanswer
 

Sur le site officiel, http://php.net/manual/fr/function.include.php, parmi les commentaires, se trouve celui-ci :

Citation :

Anonymous 11-Nov-2009 07:35
I was having problems when HTTP headers were being sent before I was ready.  I discovered that this happened only when I was including a file at the top of my script.  Since my included file only contained PHP with no whitespace outside the tags, this behavior seemed incorrect.
 
The editor I was using was saving the files in UTF8 format, sometimes including the redundant Byte Order Mark at the beginning of the file.  Any Unicode-aware editor would implicitly hide the presence of the BOM from the user, making it hard to notice the problem.  However, by using a hex editor I was able to see and remove the three bytes, restoring normal behavior.
 
Moral:  Prevent your editor from adding an invisible Unicode Byte Order Mark to the beginning of your source code!

Si cela ne marche pas, ou si ce n'est pas pratique, on peut essayer autre chose à la place du include :

<?php echo file_get_contents($page);?>

Parmi les options de file_get_contents, il y en a une pour choisir une position de départ (offset) qu'il faut peut-être utiliser. Voir les options de http://fr2.php.net/manual/fr/funct [...] ntents.php

n°2056437
kraken pol​aire
11/11 piétienement
Posté le 13-02-2011 à 16:27:43  profilanswer
 

Merci à vous 2.
Ca fonctionne en encodant la page sans BOM. J vais me renseigner un peu sur le sujet.
Pour information, le decode aurait pu être utile avec file_get_contents s'il récupère le contenu et non le fichier?
@gatsu : Et j'utilise Notepad  
: )


---------------
Aliens Vs Predator c'est avant tout l'histoire d'une rencontre.
n°2056450
gatsu35
Blablaté par Harko
Posté le 13-02-2011 à 17:36:19  profilanswer
 

notepad++ :)


---------------
Blablaté par Harko

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  un 'blanc' avant un include

 

Sujets relatifs
Mise en page différente avec includeLocation et include : question sur le chemin en absolu [resolu]
Inconvénient d'avoir beaucoup d'include ?Remplacer la valeur 0 par un blanc ou tiret
Problème include php 5ajouter un path à include_path avec un 2eme php.ini
include ne fonctionne pas PHPphp 5.3.2 et fonction include()
[C++] #include -> Type inconnuMSSQL retourne un espace blanc si un champs est vide
Plus de sujets relatifs à : un 'blanc' avant un include


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR