wstaw dane XML do mysql z php

Część pliku xml, który reprezentuje problem (plik xml ma setki rekordów klientów)

    <?xml version="1.0" encoding="utf-8"?>
    <test>
       <customer>   
          <name>customer 1</name>
          <address>address 1</address>
          <city>city 1</city>
          <state>state 1</state>
          <zip>zip 1</zip>
          <phone>phone 1</phone>
          <buyerinfo>
             <shippingaddress>
               <name>ship to</name>
               <address>Ship address1</address>
             </shippingaddress>
           </buyerinfo>
           <shippingDetail>
             <saletax>
               <saletaxamount>2</saletaxamount>
             </saletax>
           </shippingDetail>
       </customer>...

Poniżej znajduje się mój kod

 //Xml string is parsed and creates a DOM Document object
    $responseDoc = new DomDocument();        
    $responseDoc->load('test.xml');     
    foreach ($responseDoc->getElementsByTagName('customer') as $customer){

     $sSQL = sprintf(
    "INSERT INTO customer (name, address, city, state, zip, phone, shipto, shipadderss, tax) 
    VALUES ('%s','%s', '%s', '%s','%s','%s', '%s','%s','%s')",
    mysql_real_escape_string($customer->getElementsByTagName('name')->item(0)->nodeValue),
    mysql_real_escape_string($customer->getElementsByTagName('address')->item(0)->nodeValue),
    mysql_real_escape_string($customer->getElementsByTagName('city')->item(0)->nodeValue),
    mysql_real_escape_string($customer->getElementsByTagName('state')->item(0)->nodeValue),
    mysql_real_escape_string($customer->getElementsByTagName('zip')->item(0)->nodeValue),
    mysql_real_escape_string($customer->getElementsByTagName('phone')->item(0)->nodeValue)
    ?
    ?
    ?       
);
$rResult = mysql_query($sSQL);

if(mysql_errno() > 0)
{
    printf(
        '<h4 style="color: red;">Query Error:</h4>
        <p>(%s) - %s</p>
        <p>Query: %s</p>
        <hr />',
        mysql_errno(),
        mysql_error(),
        $sSQL
    );
}

    }

Pytania:

Jak uzyskać dostęp do uzyskania wartości węzła customer.buyerinfo.shippingaddress.name za pomocą mysql_real_escape_string w mojej instrukcji wstawiania? wskazane za pomocą „??"

Fakt, że mam dwa węzły o tej samej nazwie węzła"imię", Jeden jestnazwa_klienta a inny tocustomer.buyerinfo.shippingaddress.name aby nazwać sprawić, że będzie to problematycznegetElementsByTagName znacznik „nazwa”, aby uzyskać wartość.

taki sam jak pierwszy, ale jak mam to zrobićsaletaxamount wartość danych węzła?

Proszę o pomoc. Dziękuję Ci!

questionAnswers(2)

yourAnswerToTheQuestion