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

Bibliothèques et frameworks PHP Discussion :

[DOM] Problème d'encodage UTF-8


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre du Club Avatar de Valter
    Homme Profil pro
    Analyse système
    Inscrit en
    Mars 2008
    Messages
    113
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Analyse système

    Informations forums :
    Inscription : Mars 2008
    Messages : 113
    Points : 67
    Points
    67
    Par défaut [DOM] Problème d'encodage UTF-8
    Bonjour, lorsque j'essaie d'uploader un fichier xml puis de le parser : ça me met :
    Warning: DOMDocument::load() [function.DOMDocument-load]: Input is not proper UTF-8, indicate encoding ! Bytes: 0x8E 0x61 0x74 0x69 in /mnt/140/sdc/f/4/0v5/phpM01sfK, line: 1 in /mnt/140/sdc/f/4/0v5/inc/upload.php on line 12
    Le fichier est d'abord rempli de cette manière :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <?php
    		$full = utf8_encode('<?xml version="1.0" encoding="UTF-8" ?>
    <article>
    	<name>'.stripslashes(html_entity_decode($_POST['title'])).'</name>
    	<author>'.stripslashes(html_entity_decode($_POST['login'])).'</author>
    	<web>'.stripslashes(html_entity_decode($_POST['web'])).'</web>
    	<speak></speak>
    	<level></level>
    	<desc>'.stripslashes(html_entity_decode($_POST['desc'])).'</desc>
    	<table></table>
    	<inside>'.stripslashes(html_entity_decode($_POST['textarea'])).'</inside>
    </article>');
    		fputs($file, $full);
    ?>

    Puis, une fois sur la machine cliente, il peut être uploadé grâce à upload.php :
    Code php : 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['upload'])) {
    	$lok = $_FILES['article'];
    	$ext = strrchr($_FILES['article']['name'],'.');
    	if ($ext != '.xml') { echo '<script type="text/javascript">alert("Sorry, the file you tried to upload isn\'t an .xml strict article."); document.location.href = "index.php";</script>'; }
    	else {
    		$name = "../system/".$_FILES['article']['name'];
    		$file = fopen($name, "a+");
    		ftruncate ($file, 0);
    		fputs($file, $cont);
    		fclose($file);
    		$xml = new DomDocument();
    		$xml->load($_FILES['article']['tmp_name']);
    		$elements = $xml->getElementsByTagName('article');
    		$element = $elements->item(0);
    		$enfants = $element->childNodes;
    		foreach($enfants as $fra) {
    			$nam = $fra->nodeName;
    			$num = $fra->nodeValue;
    			switch ($nam) {
    				case "name"; $title = $num; break;
    				case "author"; $author = $num; break;
    				case "web"; $web = $num; break;
    				case "desc"; $desc = $num; break;
    				case "inside"; $inside = $num; break;
    			}
    		}
    	}
    } ?>

    Merci d'avance,

  2. #2
    Membre averti
    Profil pro
    Développeur Web
    Inscrit en
    Septembre 2004
    Messages
    352
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Septembre 2004
    Messages : 352
    Points : 434
    Points
    434
    Par défaut
    Le fichier xml en lui-même doit être encodé en UTF-8 sans BOM.

  3. #3
    Membre du Club Avatar de Valter
    Homme Profil pro
    Analyse système
    Inscrit en
    Mars 2008
    Messages
    113
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Analyse système

    Informations forums :
    Inscription : Mars 2008
    Messages : 113
    Points : 67
    Points
    67
    Par défaut
    Dans ce cas comment faire ? Puisque le fichier est créer à partir de dom ?

Discussions similaires

  1. [FPDF] Encodage UTF-8
    Par navis84 dans le forum Bibliothèques et frameworks
    Réponses: 17
    Dernier message: 08/09/2018, 12h43
  2. Problème d'encodage UTF-8
    Par Shugo78 dans le forum Ubuntu
    Réponses: 0
    Dernier message: 23/11/2007, 19h40
  3. [MySQL] Problème d'encodage UTF-8
    Par cloridriks dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 30/10/2007, 11h19
  4. [DOM] probléme d'encodage
    Par Mo_Poly dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 17/10/2007, 01h30
  5. [DOM] Problème d'encodage
    Par Pollux dans le forum Bibliothèques et frameworks
    Réponses: 18
    Dernier message: 12/09/2006, 13h38

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