Bonjour à tous,

j'ai posté dans le forum XML, mais n'ayant pas de réponses et suite à un conseil d'un des responsables XML (ou du responsable), voici mon post :

je n'ai pas trouvé d'aide sur le net à part :
http://www.php.net/manual/fr/ref.simplexml.php

Pourriez-vous me dire :

- s'il est possible de créer un fichier XML à partir d'un WXS (W3C XML
Schema) ? Mon script "consulterait" mon WXS, cela me permettrait de
"générer" un formulaire qui se mettrait à jour malgré la modification d'un
élément de mon WXS. Cela me permettrait par exemple de générer
automatiquement des listes déroulantes à partir de mes listes de choix
(exemple : M. ou Mme ou Mlle) ;

- comment est-il possible de modifier un fichier XML existant ? Voici un
extrait de mon code, mais il ne veut pas modifier mon fichier XML, alors que
la fonction "asXML()" renvoit bien "true" ??? Donc mon script "pense" que le
fichier XML a bien été modifié, alors que ce n'est absolument pas le cas !

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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
<?php
session_start();
 
if ((!empty($_POST['nom'])) && (!empty($_POST['prenom'])) &&
(!empty($_POST['date_naiss'])) && (!empty($_POST['lieu_naiss'])) &&
(!empty($_POST['depart'])) && (!empty($_POST['nation'])) &&
(!empty($_POST['statut'])) && (!empty($_POST['numero'])) &&
(!empty($_POST['voie'])) && (!empty($_POST['cp'])) &&
(!empty($_POST['ville'])) && (!empty($_POST['pays'])) &&
(!empty($_POST['tel'])) && (!empty($_POST['port'])) &&
(!empty($_POST['fax'])) && (!empty($_POST['courriel']))) {
 
    function supprAccents($chaine) {
 
return(strtr($chaine,"ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ","AAAAAAaaaaaaOOOOOOooooooEEEEeeeeCcIIIIiiiiUUUUuuuuyNn"));
    }
 
    $fic = "id_".$_SESSION['num'].".xml";
 
    if (file_exists($fic)) {
        $xml = simplexml_load_file($fic);
    }
    else {
        echo "Impossible d'ouvrir ce fichier XML.";
    }
 
    $xml->PROFIL->IDENTITE->CIVILITE = utf8_encode($_POST['civilite']);
    $xml->PROFIL->IDENTITE->NOM = utf8_encode(strtoupper($_POST['nom']));
    $xml->PROFIL->IDENTITE->PRENOM = utf8_encode(ucfirst($_POST['prenom']));
    $xml->PROFIL->COORDONNEES->COURRIEL =
utf8_encode(strtolower(supprAccents($_POST['courriel'])));
 
    $xml->PROFIL->PRESENTATION = utf8_encode($xml->PROFIL->PRESENTATION);
 
    for($i=0 ; $i<4 ; $i++) {
        $xml->CV->INFOS_DIVERSES->DIVERS[$i] =
utf8_encode($xml->CV->INFOS_DIVERSES->DIVERS);
    }
 
    $ok = $xml->asXML();
 
// if (($xml->asXML($fic)))
    if ($ok == false)
        {
        echo "
            <script language=\"JavaScript\">
                window.alert(\"Une erreur est survenue lors de la
modification, merci de recommencer.\");
                history.go(-1);
            </script>
        ";
        }
    else {
        echo "
            <script language=\"JavaScript\">
                window.alert(\"Modification du CV effectuée.\");
            history.go(-1);
            </script>
        ";
    }
}
else {
    echo "
        <script language=\"JavaScript\">
            window.alert(\"Attention, vous devez remplir tous les champs.\");
            history.go(-1);
        </script>
    ";
}
?>

EDIT : J'ai bien vu le tutoriel, mais il est trop succint pour ce que je souhaite faire.


Merci d'avance,
Gôm.