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'upload puis parsage fichier XML


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 : 31
    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'upload puis parsage fichier XML
    Bonjour, je vous présente d'abord mes documents :

    test.xml (le nom et contenu peuvent varier) :
    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?xml version="1.0" encoding ="ISO-8859-1" ?>
    <article>
    	<name>Name of the article</name>
    	<author>Author</author>
    	<web>Website</web>
    	<speak></speak>
    	<level></level>
    	<desc>Description</desc>
    	<table></table>
    	<inside>Full article</inside>
    </article>

    Puis index.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
    29
    30
    <?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+");
    		$cont = file_get_contents($_FILES['article']['tmp_name']);
    		fputs($file, $cont);
    		fclose($file);
    		$xml = new DomDocument();
    		$xml->load($cont);
    		$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;
    			}
    		}
    	}
    }
    ?>

    Et ça me met :
    Warning: DOMDocument::load() [function.DOMDocument-load]: I/O warning : failed to load external entity "/mnt/140/sdc/f/4/0v5/create/<?xml version="1.0" encoding="ISO-8859-1" ?> <article> <name>Name of the article</name> <author>Author</author> <web>Website</web> <speak></speak> <level></level> <desc>Description</desc> <table></table> <inside>Full article</inside> </article>" in /mnt/140/sdc/f/4/0v5/create/index.php on line 36

    Warning: Invalid argument supplied for foreach() in /mnt/140/sdc/f/4/0v5/create/index.php on line 40
    La deuxième erreur dépend de la première, mais je ne sais pas comment la résoudre.

    Merci d'avance,

  2. #2
    Membre expérimenté Avatar de julien.63
    Profil pro
    balayeur
    Inscrit en
    Décembre 2005
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : balayeur

    Informations forums :
    Inscription : Décembre 2005
    Messages : 1 348
    Points : 1 311
    Points
    1 311
    Par défaut
    salut
    il concatène l'adresse et le contenu de fichier.
    Je pense que tu peux charger directement le document xml.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    ...
    $xml = new DomDocument();
    $xml->load($_FILES['article']['tmp_name']);
    ...

  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 : 31
    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
    Ah ouais, merci bien ^^
    Je n'aurais jamais cru que la solution était si proche

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

Discussions similaires

  1. [DOM] problème lors du parcours du fichier xml
    Par krfa1 dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 11/05/2007, 07h24
  2. Réponses: 3
    Dernier message: 28/02/2006, 12h41
  3. Problème de lecture dans un fichier xml
    Par Pyra dans le forum Langage
    Réponses: 2
    Dernier message: 18/12/2005, 00h13
  4. Problème d'écriture dans un fichier xml
    Par vanoou dans le forum C++Builder
    Réponses: 1
    Dernier message: 13/07/2005, 02h28
  5. Réponses: 2
    Dernier message: 01/06/2004, 12h47

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