|
|||||||
| XML/XSL et SOAP Forum d'entraide sur XML et SOAP. Avant de poster -> FAQ XML, Sources XML |
![]() |
|
|
Outils de la discussion |
|
|
#1 (permalink) |
|
Invité de passage
![]() |
Bonjour,
Je voudrai bien insérer mes données du fichier XML vers ma base de donnée. bouks.xml Code :
<?xml version="1.0" encoding="iso-8859-1"?> <?xml:stylesheet type="text/xsl" href="books.xsl"?> <books> <book> <title>Dilbert</title> <author>Scott Adams</author> <price>13</price> </book> <book> <title>Le seigneur des anneaux</title> <author>J.R.R Tolkien</author> <price>12.50</price> </book> <book> <title>Harry Potter à l'ecole des sorciers</title> <author>J.K. Rowling</author> <price>8.54</price> </book> <book> <title>les misérables</title> <author>Victor Higo</author> <price>7.50</price> </book> </books> Code :
<?xml version="1.0" encoding="iso-8859-1"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="books/book"> <xsl:text> INSERT INTO books (title, author, price) VALUES ( </xsl:text> <xsl:value-of select="title"/> <xsl:text>, </xsl:text> <xsl:value-of select="author"/> <xsl:text>, </xsl:text> <xsl:value-of select="price"/> <xsl:text> </xsl:text> <xsl:text>);</xsl:text><br/> </xsl:template> </xsl:stylesheet> Code :
INSERT INTO books (title, author, price) VALUES ( Dilbert, Scott Adams, 13 ); INSERT INTO books (title, author, price) VALUES ( Le seigneur des anneaux, J.R.R Tolkien, 12.50 ); INSERT INTO books (title, author, price) VALUES ( Harry Potter à l'ecole des sorciers, J.K. Rowling, 8.54 ); INSERT INTO books (title, author, price) VALUES ( les misérables, Victor Higo, 7.50 ); Comment puis-je faire |
|
|
|
|
|
#4 (permalink) |
![]() Date d'inscription: juin 2003
Messages: 4 699
|
je vois 2 possibilités mais je ne pourrais pas te dire laquelle est la plus performante
1) tu mets le contenu de la transformation dans un fichier temporaire et tu exécute "mysql < fichier.sql" 2) tu découpes pour envoyer les requêtes une après l'autre avec les fonctions php "mysql_..." |
|
|
|
|
|
#8 (permalink) |
![]() Date d'inscription: juin 2003
Messages: 4 699
|
pas de problème, c'est faisable 8) 8) 8)
1ère étape : utilise PHP pour faire la transformation XSL tu trouvera un exemple de code PHP qui fait ca à l'adresse suivante : http://bob.developpez.com/phpxslt/ 2ème étape : toujours en PHP : tu fait une des 2 possibilités que je t'ai proposé ci dessus comme tu vois tout ce fait en PHP, c'est un peu hors sujet ici donc jette un coup d'oeil sur la partie PHP de developpez.com correction au sujet de ta transformation : en mysql tu dois entrourer les chaines de caractères par " ou '
|
|
|
|
|
|
#9 (permalink) |
|
Invité de passage
![]() |
Merci pour ta réponse,
je visiterai lien que tu m'a communiqué, et je te dirai apres, est ce c'est resolu ou non. Code :
correction au sujet de ta transformation : en mysql tu dois entrourer les chaines de caractères par " ou ' Donc, à plus tard |
|
|
|
|
![]() |
![]() |
||
Donnée XML >vers> Mysql
|
||
| Outils de la discussion | |
|
|