XMLをmySQLにインポートしようとしています。しかし、今私が持っているのは、最初のものだけです(以下のXMLとして)。私が欲しいと思っているのは、XMLやその他のルート要素を追加することです。 コードが私が使用する正確なフィールドにローカライズされているかどうかは関係ありません。XMLからmySQLへのスクリプトの配列に問題があり、複数のノードをインポートできません。
テーブルの名前はxml2msqlで、フィールドは、身体を見出し、から、にあります。
自分でコードを作成すれば、それを私と共有すれば素晴らしいことでしょう。
xml要素とmysqlフィールドが同じで、同じ順序であれば、以下のコードは一種のグローバル化されています。
$columns = array();
$data = array();
$xml = simplexml_load_file("test.xml");
echo $xml->getName() . "<br />";
foreach($xml->children() as $child)
{
echo $child->getName() . ": " . $child . "<br />";
$columns[] = $child->getName();
$data[] = (string)$child;
}
$col = '`'. implode('`,`',$columns) .'`';
$val = "'". implode("','",$data)."'";
$query = "INSERT INTO xml2mysql ($col) VALUES ($val)";
echo $query;
mysql_query($query);
この
は<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Dont forget me this weekend!</body>
</note>
上記のコードで動作するXMLであり、これは、あなたがこのような各ノートを反復処理する必要があることが好ましいXML
<notes>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Dont forget me this weekend!</body>
</note>
<note>
<to>Mary</to>
<from>Nick</from>
<heading>Letter</heading>
<body>Reminder about your dog</body>
</note>
<notes>
*(ヒント)* http://rpbouman.blogspot.com/2006/03/importing-xml-data-into-mysql-using.html – Gordon