roule007 Posté 8 Juillet 2005 Partager Posté 8 Juillet 2005 Bonjour à tous, Je souhaite rentrer dans un fichier XML certaines entrées de ma base de données. J'ai fait un fichier php qui lit ma base et qui rentre les données dans un fichier XML. J'ai un problème de formation du XML avec les données type url (http://www.monsite.com) et certaines description ou il y a des quotes, accents et autres guillements. Ma question est donc comment à la suite d'une requête MYSQL récuppérer des champs texte pour les mettre dans un fichier XML, sans que celui-ci soit mal formé ! Merci à tous ! Lien vers le commentaire Partager sur d’autres sites More sharing options...
loulou Posté 8 Juillet 2005 Partager Posté 8 Juillet 2005 Bonjour, Je ne suis pas sure de bien comprendre ton problème : Quand tu récupères tes données, elles sont entourées de ' ou de " ? Ou bien alors s'agit-il de données comportant des tags html ou php ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
loulou Posté 8 Juillet 2005 Partager Posté 8 Juillet 2005 Ce que tu peux faire, c'est créer des champs avec CDATA. Cela te permet d'avoir un contenu de champs, non analysé par le parseur xml, ainsi si le champs contient des caractèes "spéciaux" qui pourraient intérrompre le "parsage", vu que les champs CDATA ne sont pas analysés, cela ne plante pas. echo '<designation><![CDATA['. $products['products_name'] .']]></designation>'; Lien vers le commentaire Partager sur d’autres sites More sharing options...
roule007 Posté 8 Juillet 2005 Auteur Partager Posté 8 Juillet 2005 Ce que tu peux faire, c'est créer des champs avec CDATA.Cela te permet d'avoir un contenu de champs, non analysé par le parseur xml, ainsi si le champs contient des caractèes "spéciaux" qui pourraient intérrompre le "parsage", vu que les champs CDATA ne sont pas analysés, cela ne plante pas. echo '<designation><![CDATA['. $products['products_name'] .']]></designation>'; <{POST_SNAPBACK}> Bon alors j'ai mis : $xml .= "<lien>![CDATA['.$lien.']]</lien>\n"; Mais il me sort toujours une erreur car mes url sont de la forme : http://www.monsite.com/index.php?truc=12&truc2=13 Comment faire ?? Lien vers le commentaire Partager sur d’autres sites More sharing options...
roule007 Posté 8 Juillet 2005 Auteur Partager Posté 8 Juillet 2005 En fait pour l'url c bon :S Mais pas pour les descriptions.... $xml .= "<description><![CDATA['.$description.']]></description>\n"; Mais il me pose pb quand dans ma description j'ai des ' du genre :" l'école" :S Lien vers le commentaire Partager sur d’autres sites More sharing options...
loulou Posté 8 Juillet 2005 Partager Posté 8 Juillet 2005 Il te manque des chevrons autour de "CDATA" $xml .= "<lien><![CDATA['.$lien.']]></lien>\n"; Et pour encadrer une chaine de caractères, soit tu mets des doubles quotes soit des simples quotes, mais pas l'un en début de chaine et l'autre en fin : $xml .= "<lien><![CDATA['.$lien.... Lien vers le commentaire Partager sur d’autres sites More sharing options...
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant