parser xml en php pour importation dans une base de donnée

parser xml en php pour importation dans une base de donnée - PHP - Programmation

Marsh Posté le 03-03-2011 à 15:45:45    

Bonjour,  
Voila mon problème je voudrais créer un parser XML en php pour pouvoir l'importer dans ma base de donnée, le problème c'est que je ne sais pas du tout comment faire. Si quelqu'un pouvait m'aider sa serais super sympa.
ps : je suis novice :(  
Voici mon fichier xml :
 

<?xml version="1.0"?>
 
<?mso-application progid="Excel.Sheet"?>
 
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
 
 xmlns:o="urn:schemas-microsoft-com:office:office"
 
 xmlns:x="urn:schemas-microsoft-com:office:excel"
 
 xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
 
 xmlns:html="http://www.w3.org/TR/REC-html40">
 
 <DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">
 
  <Author>sylvain</Author>
 
  <LastAuthor>sylvain</LastAuthor>
 
  <Created>2011-02-28T13:41:35Z</Created>
 
  <Version>12.00</Version>
 
 </DocumentProperties>
 
 <ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">
 
  <WindowHeight>8505</WindowHeight>
 
  <WindowWidth>18915</WindowWidth>
 
  <WindowTopX>120</WindowTopX>
 
  <WindowTopY>30</WindowTopY>
 
  <ProtectStructure>False</ProtectStructure>
 
  <ProtectWindows>False</ProtectWindows>
 
 </ExcelWorkbook>
 
 <Styles>
 
  <Style ss:ID="Default" ss:Name="Normal">
 
   <Alignment ss:Vertical="Bottom"/>
 
   <Borders/>
 
   <Font ss:FontName="Calibri" x:Family="Swiss" ss:Size="11" ss:Color="#000000"/>
 
   <Interior/>
 
   <NumberFormat/>
 
   <Protection/>
 
  </Style>
 
  <Style ss:ID="s62">
 
   <NumberFormat ss:Format="Short Date"/>
 
  </Style>
 
 </Styles>
 
 <Worksheet ss:Name="exportCSVExtraction FCPE">
 
  <Table ss:ExpandedColumnCount="26" ss:ExpandedRowCount="1262" x:FullColumns="1"
 
   x:FullRows="1" ss:DefaultColumnWidth="60" ss:DefaultRowHeight="15">
 
   <Row>
 
    <Cell><Data ss:Type="String">Nom</Data></Cell>
 
    <Cell><Data ss:Type="String">Prénom 1</Data></Cell>
 
    <Cell><Data ss:Type="String">Date de naissance</Data></Cell>
 
    <Cell><Data ss:Type="String">Division</Data></Cell>
 
    <Cell><Data ss:Type="String">Option 1</Data></Cell>
 
    <Cell><Data ss:Type="String">Option 2</Data></Cell>
 
    <Cell><Data ss:Type="String">Option 3</Data></Cell>
 
    <Cell><Data ss:Type="String">Option 4</Data></Cell>
 
    <Cell><Data ss:Type="String">Option 5</Data></Cell>
 
    <Cell><Data ss:Type="String">Option 6</Data></Cell>
 
    <Cell><Data ss:Type="String">Option 7</Data></Cell>
 
    <Cell><Data ss:Type="String">Option 8</Data></Cell>
 
    <Cell><Data ss:Type="String">Civilité resp. légal1</Data></Cell>
 
    <Cell><Data ss:Type="String">Nom resp. légal1</Data></Cell>
 
    <Cell><Data ss:Type="String">Prénom resp. légal1</Data></Cell>
 
    <Cell><Data ss:Type="String">Ligne 1 Adresse légal1</Data></Cell>
 
    <Cell><Data ss:Type="String">Ligne 2 Adresse légal1</Data></Cell>
 
    <Cell><Data ss:Type="String">Code postal resp. légal1</Data></Cell>
 
    <Cell><Data ss:Type="String">Commune resp. légal1</Data></Cell>
 
    <Cell><Data ss:Type="String">Lien de parenté légal1</Data></Cell>
 
    <Cell><Data ss:Type="String">Tel maison resp. légal1</Data></Cell>
 
    <Cell><Data ss:Type="String">Tel mobile resp. légal1</Data></Cell>
 
    <Cell><Data ss:Type="String">Ligne 1 Adresse</Data></Cell>
 
    <Cell><Data ss:Type="String">Ligne 2 Adresse</Data></Cell>
 
    <Cell><Data ss:Type="String">Code postal élève</Data></Cell>
 
    <Cell><Data ss:Type="String">Commune élève</Data></Cell>
 
   </Row>
  </Table>
 
  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
 
   <PageSetup>
 
    <Header x:Margin="0.3"/>
 
    <Footer x:Margin="0.3"/>
 
    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
 
   </PageSetup>
 
   <Selected/>
 
   <ProtectObjects>False</ProtectObjects>
 
   <ProtectScenarios>False</ProtectScenarios>
 
  </WorksheetOptions>
 
 </Worksheet>
 
</Workbook>

Reply

Marsh Posté le 03-03-2011 à 15:45:45   

Reply

Marsh Posté le 03-03-2011 à 17:19:42    

Si cas simple : SimpleXML (http://php.net/manual/fr/book.simplexml.php), sinon DOMDocument (http://www.php.net/manual/fr/book.dom.php).


---------------
| AMD Ryzen 7 7700X 8C/16T @ 4.5-5.4GHz - 64GB DDR5-6000 30-40-40 1T - AMD Radeon RX 7900 XTX 24GB @ 2680MHz/20Gbps |
Reply

Marsh Posté le 10-03-2011 à 19:47:28    

merci j'ai réussi a parser avec SimlpleXML, maintenant je cherche comment faire pour le mettre dans ma base de donnée...

Reply

Marsh Posté le 10-03-2011 à 19:54:16    

Un champs CLOB à priori est le plus adapté.


---------------
| AMD Ryzen 7 7700X 8C/16T @ 4.5-5.4GHz - 64GB DDR5-6000 30-40-40 1T - AMD Radeon RX 7900 XTX 24GB @ 2680MHz/20Gbps |
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed