Bonjour à tous,
je suis en train de concevoir un script qui permet d'écrire un document sur un fichier xml avec dom (j'ai trop de problèmes avec simplexml).
Pour l'instant, je suis arrivé à écrire toutes les données sur un fichier xml mais pour afficher, j'ai un problème.
Dans le fichier xml, <document> est la balise racine.
Dans <document>, il y a deux balises <title> (c'est pour une fonctionnalité prochaine) et quand j'affiche une des deux, j'obtiens un message d'erreur:
Fatal error: Call to a member function item() on a non-object in C:\xampp\htdocs\esao\dina.php on line 41
Le print_r ne m'affiche que DOMDocument Object ( ) (il n'y a rien à l'intérieur de l'objet).
Voici mon code php:
Le fichier xml est celui-ci:
Code : 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
31
32
33
34
35
36
37 <?php $dom = new DOMdocument('1.0', 'iso-8859-1'); $racine = $dom->createElement('document'); $racine = $dom->appendChild($racine); $title = $dom->createElement('title'); $title = $racine->appendChild($title); $title1 = $dom->createTextNode($_POST['title']); $title1 = $title->appendChild($title1); $titl = $dom->createElement('title'); $titl = $racine->appendChild($titl); $titl1 = $dom->createTextNode($_POST['title']); $titl1 = $titl->appendChild($titl1); $text = $dom->createElement('text'); $text = $racine->appendChild($text); $text1 = $dom->createTextNode($_POST['text']); $text1 = $text->appendChild($text1); $time = $dom->createElement('created'); $time = $racine->appendChild($time); $time1 = $dom->createTextNode(date("d-n-Y/H:i:s")); $time1 = $time->appendChild($time1); $dom->formatOutput = true; $dom->save('doc2.xml'); echo $dom->title->item(0); echo $dom->title->item(0); print_r($dom); ?>
Si quelqu'un pourrez m'aider, ça serait sympa .
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7<?xml version="1.0" encoding="iso-8859-1"?> <document> <title></title> <title></title> <text></text> <created>29-3-2008/18:59:00</created> </document>
Merci d'avance
Partager