Aenoa Posté 17 Décembre 2012 Posté 17 Décembre 2012 Bonjour bonjour ! Je travailles actuellement sur un projet de "mini-CMS" pour un jeu vidéo, et je suis heurté à un problème de taille. En effet, vu qu'il s'agit d'un CMS, toute personne pourra l'obtenir et toute personne pourra donc uploader son propre XML. Toutefois, le XML doit répondre à une structure bien précise, et c'est là que ça bloque: comment faire? J'ai regardé au niveau de simplexml avec la fonction "new DOM" et "->validate" mais cela reste très obscur pour moi. Voici ma fonction faisant le traitement du xml: function import_xml_to_array($xml_address) { $xmlstr = simplexml_load_file($xml_address); $returned_var = array(); $returned_var['clan_NAME'] = $xmlstr->name; $returned_var['clan_URL'] = $xmlstr->web; $returned_var['clan_MAIL'] = $xmlstr->email; $returned_var['clan_TITLE'] = $xmlstr->title; $returned_var['clan_TAG'] = $xmlstr['nick']; $returned_var['member'] = array(); $i = 0; foreach($xmlstr->member as $member) { $returned_var['member'][$i] = array(); $returned_var['member'][$i]['ID'] = $member['id']; $returned_var['member'][$i]['NICK'] = $member['nick']; $returned_var['member'][$i]['NAME'] = $member->name; $returned_var['member'][$i]['EMAIL'] = $member->email; $returned_var['member'][$i]['ICQ'] = $member->icq; $returned_var['member'][$i]['REMARK'] = $member->remark; $i ++; } return $returned_var; } et voici une structure basique du xml en question: (la balise <member> est répétable) <?xml version="1.0"?> <!DOCTYPE squad SYSTEM "A2Squad.dtd"> <?xml-stylesheet href="A2Squad.xsl" type="text/xsl"?><squad nick="NULL"> <name>contenu1</name> <email>contenu2</email> <web>contenu3</web> <picture>image_avatar</picture> <title>N/A</title> <member id="0" nick="Invalid"> <name>membre_champ1</name> <email>membre_champ2</email> <icq>membre_champ3</icq> <remark>membre_champ4</remark> </member></squad> j'ai trouvé ces quelques sites expliquant comment faire, mais cela reste très mystérieux pour moi. http://xmlfr.org/w3c/TR/xmlschema-0/ http://www.grappa.univ-lille3.fr/~torre/Enseignement/Cours/XML/xmlschema.php Auriez-vous une idée de comment faire de manière simple et compréhensible ? Cordialement,
SStephane Posté 19 Décembre 2012 Posté 19 Décembre 2012 http://www.dailymotion.com/video/xtddv_lapin-compris_fun J'aurai tendance à englober tes member dans un members, sinon, la vidéo illustre à merveille ma compréhension de ta question, comment faire quoidonc ?
Solution Portekoi Posté 19 Décembre 2012 Solution Posté 19 Décembre 2012 Ca question est : Comment valider un XML via un XSD. Réponse ici : http://www.blog-nouvelles-technologies.fr/archives/1345/validation-d%E2%80%99un-document-xml-a-l%E2%80%99aide-d%E2%80%99un-schema-xsd-en-php/
Aenoa Posté 19 Décembre 2012 Auteur Posté 19 Décembre 2012 Merci c'était exactement ça et j'ai bien aimé la vidéo
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant