salam. xml fayllarını bazaya atmaq məqsədi ilə kiçik bir php skripti yazdım - amma atmadı -))
görünüş etibarilə bir səhv etməmişəm, amma nəsə çatışmaqzlıq var deyəsən.
örnək xml faylı.
[code]<br /><Valute Code="ZAR"><br /><Nominal>1</Nominal><br /><Name>Cənubi Afrika randı</Name><br /><Value>0.0848</Value><br /></Valute><br /><Valute Code="LTL"><br /><Nominal>1</Nominal><br /><Name>Litva liti</Name><br /><Value>0.2924</Value><br /></Valute><br /><Valute Code="PLN"><br /><Nominal>1</Nominal><br /><Name>Polşa zlotası</Name><br /><Value>0.2413</Value><br /></Valute><br /><Valute Code="CNY"><br /><Nominal>1</Nominal><br /><Name>Çin yuanı</Name><br /><Value>0.1276</Value><br /></Valute><br /><Valute Code="INR"><br /><Nominal>1</Nominal><br /><Name>Hindistan rupisi</Name><br /><Value>0.0143</Value><br /></Valute><br />[/code]
php skripti
[code]</p><p><?php</p><p>$link = mysql_connect('host', 'root', 'parol') or die ('xxxxxx');<br /> $dbselect = mysql_select_db('test', $link) or die ('xxxxxxx');</p><p>$doc = new DOMDocument(); <br />$doc->load( 'vlytkrs.xml' ); </p><p><br />$valyutalar = $doc->getElementsByTagName( "Valute"</p><p>foreach( $valyutalar as $valyuta ) <br />{ <br /> $nominal = $valyuta->getElementsByTagName( "Nominal" ); <br /> $nom = $nominal->item(0)->nodeValue; <br /> <br /> $name= $valyuta->getElementsByTagName( "Name" ); <br /> $ad= $name->item(0)->nodeValue; <br /> <br /> $value = $valyuta->getElementsByTagName( "Value" ); <br /> $val = $value->item(0)->nodeValue; <br /> <br /><br />}<br /> <br /> $sql = "INSERT INTO 'test'.'valyuta'(id, mebleg, pul_adi, deyer, tarix) VALUES(NULL, $nom, $ad, $val, CURDATE())";<br /> $res = mysql_query($sql);<br /><br /> if (!$res):<br /> echo "exoo";<br /> else:<br /> echo "asagidakilar daxil olundu";<br /> echo "<b>".$nom." ".$ad. " - " .$val. "AZN\n</b><br>";<br /> endif;<br /><br /> ?></p><p>[/code]
skriptini işə salanda, "exoo" yazılır. yəni, (!$res) şərti ödənilir - niyə? bilmirəm.
eyni alqoritmlə bu skripti pythonda yazdım - o işlədi.