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 :

[POO] POO en PHP : Fonction de mise à jour de fichier XML


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Inscrit en
    Octobre 2007
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 20
    Points : 16
    Points
    16
    Par défaut [POO] POO en PHP : Fonction de mise à jour de fichier XML
    Bonjour tlm !
    Le code suivant à partir des données receuillies d'un formulaire, permet de realiser la mise à jour d'un fichier XML existant.
    Alors sous mon serveur localhost WINNT ça marché Nikel. Par contre en utilsant le meme code sous Linux, je me suis rendu compte que l'exécution se bloque à $doc = new DOMDocument("1.0","UTF-8");.

    Ce serait un bien grand plaisir de recevoir votre assistance.
    Meilleures salutations

    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
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    public function updateXMLFile() {
    			// create doctype
    			echo 199999;
    			$doc = new DOMDocument("1.0","UTF-8");
    			
    			$doc->load('/home/tft/greenstone/collect/viprivattest/import/comm/metadata.xml');
    			//-----------------------------------------------------------------------------------------------------------------------------
    			// Create a Child Element FileSet under DirectoryMetadata
    			$FileSet=$doc->createElement("FileSet");
    			$doc->documentElement->appendChild($FileSet);
    			// Create a Child Element Texte Node ( "")  for FileSet
    			$FileSetText=$doc->createTextNode("");
    			$FileSet->appendChild($FileSetText);
    			//-----------------------------------------------------------------------------------------------------------------------------
    			// Create a Child Element -> Child Element FileName
    			$FileName=$doc->createElement("FileName");
    			$FileSet->appendChild($FileName);
    			// Create a Child Element Texte Node
    			$FileNameText=$doc->createTextNode($this->name);//
    			$FileName->appendChild($FileNameText);
    			//-----------------------------------------------------------------------------------------------------------------------------
    			// Create a Child Element -> Child Element  Description
    			$Description=$doc->createElement("Description");
    			$FileSet->appendChild($Description);
    			// Create a Child Element Texte Node
    			$DescriptionText=$doc->createTextNode("");
    			$Description->appendChild($DescriptionText);
    			//-----------------------------------------------------------------------------------------------------------------------------
    			//for ($i=0;$i<count($this->content);$i++) {
    			foreach ($this->meta as $key => $value) {
    					// Create a Child Element -> Child Element-> Child Element
    					$Metadata[$key]=$doc->createElement("Metadata");
    					$Description->appendChild($Metadata[$key]);
    					
    					// Create a Child Element Texte Node
    					$MetadataText[$key]=$doc->createTextNode($value);
    					$Metadata[$key]->appendChild($MetadataText[$key]);
    			
    					// create attribute node 1
    					$mode = $doc->createAttribute("mode");
    					$Metadata[$key]->appendChild($mode);
    					// create attribute value node
    					$modeValue = $doc->createTextNode("accumulate");
    					$mode->appendChild($modeValue);
    					
    					// create attribute node 2
    					$name = $doc->createAttribute("name");
    					$Metadata[$key]->appendChild($name);
    					// create attribute value node
    					$nameValue = $doc->createTextNode("vi.".$key);
    					$name->appendChild($nameValue);
    			}
    			//-----------------------------------------------------------------------------------------------------------------------------
    			
    			//echo $doc->saveXML();
    			$order = $doc->save("Met.xml");
    }

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 777
    Points
    17 777
    Par défaut
    Citation Envoyé par kdson
    Par contre en utilsant le meme code sous Linux, je me suis rendu compte que l'exécution se bloque à $doc = new DOMDocument("1.0","UTF-8");
    Et concrètement quel est le "résultat" obtenu ?

    Vous développez bien sur une version 5 de PHP sur votre environnement Linux et l'extension DOM est active (cf phpinfo) ?

  3. #3
    Membre à l'essai
    Inscrit en
    Octobre 2007
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 20
    Points : 16
    Points
    16
    Par défaut
    Le resultat en qu'il quitte le mainframe, sans message d'erreur !
    En effet je developpe sous Joomla avec la config PHP 5.1.2.
    En consultant PHPinfo() sur les 2 serveurs, je me rends effectivement compte que celui de WINNT contient bien l'extension DOM qui ne figure pas sur Linux. Pourriez vous me dire comment inclure cette extension sous serveur linux
    Merci

Discussions similaires

  1. Mise à jour de fichier XML (sans XSL) à partir de Matrice Excel
    Par petozak dans le forum XML/XSL et SOAP
    Réponses: 3
    Dernier message: 30/03/2015, 11h32
  2. [DOM] Problème de mise à jour de fichier XML
    Par QAYS dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 08/09/2011, 23h31
  3. Mise à jour de fichiers XML
    Par VinnieMc dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 26/11/2009, 17h53
  4. Problème avec la fonction de mise à jour en base
    Par L'aigle de Carthage dans le forum Langage
    Réponses: 1
    Dernier message: 27/03/2008, 15h58
  5. Réponses: 1
    Dernier message: 11/05/2007, 00h59

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