Envoyer XML avec php via la poste

Je sais il ya un certain nombre de questions similaires à cela, mais j'ai essayé de déconner avec toutes les solutions et n'ont pas semblé être en mesure de le faire fonctionner. Je suis en train de poster xml directement à un service web et d'obtenir une réponse en retour. Techniquement, je suis en train d'essayer de se connecter à freightquote.com la documentation que vous pouvez trouver dans le coin supérieur droit de cette page à la rubrique documentation. Je ne le mentionne parce que je vois le terme de SAVON un terrain à son xml et qu'il pourrait faire une différence. De toute façon ce que je veux, c'est la possibilité d'envoyer xml vers une url et obtenir une réponse en retour.

Donc, si j'avais le suivant

$xml = "<?xml version='1.0' encoding='utf-8'?>
            <soap:Envelope xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/' 
            xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' 
            xmlns:xsd='http://www.w3.org/2001/XMLSchema'>
            <soap:Body>
              <GetRatingEngineQuote xmlns='http://tempuri.org/'>
                <request>
                  <CustomerId>0</CustomerId> <!-- Identifier for customer provided by Freightquote -->
                  <QuoteType>B2B</QuoteType> <!-- B2B /eBay /Freightview -->
                  <ServiceType>LTL</ServiceType> <!--  LTL /Truckload /Groupage /Haulage /Al  -->
                  <QuoteShipment>
                    <IsBlind>false</IsBlind>
                    <PickupDate>2010-09-13T00:00:00</PickupDate>
                    <SortAndSegregate>false</SortAndSegregate>
                    <ShipmentLocations>
                      <Location>
                        <LocationType>Origin</LocationType>
                        <RequiresArrivalNotification>false</RequiresArrivalNotification>
                        <HasDeliveryAppointment>false</HasDeliveryAppointment>
                        <IsLimitedAccess>false</IsLimitedAccess>
                        <HasLoadingDock>false</HasLoadingDock>
                        <IsConstructionSite>false</IsConstructionSite>
                        <RequiresInsideDelivery>false</RequiresInsideDelivery>
                        <IsTradeShow>false</IsTradeShow>
                        <IsResidential>false</IsResidential>
                        <RequiresLiftgate>false</RequiresLiftgate>
                        <LocationAddress>
                          <PostalCode>30303</PostalCode>
                          <CountryCode>US</CountryCode>
                        </LocationAddress>
                        <AdditionalServices />
                      </Location>
                      <Location>
                        <LocationType>Destination</LocationType>
                        <RequiresArrivalNotification>false</RequiresArrivalNotification>
                        <HasDeliveryAppointment>false</HasDeliveryAppointment>
                        <IsLimitedAccess>false</IsLimitedAccess>
                        <HasLoadingDock>false</HasLoadingDock>
                        <IsConstructionSite>false</IsConstructionSite>
                        <RequiresInsideDelivery>false</RequiresInsideDelivery>
                        <IsTradeShow>false</IsTradeShow>
                        <IsResidential>false</IsResidential>
                        <RequiresLiftgate>false</RequiresLiftgate>
                        <LocationAddress>
                          <PostalCode>60606</PostalCode>
                          <CountryCode>US</CountryCode>
                        </LocationAddress>
                        <AdditionalServices />
                      </Location>
                    </ShipmentLocations>
                    <ShipmentProducts>
                      <Product>
                        <Class>55</Class>
                        <Weight>1200</Weight>
                        <Length>0</Length>
                        <Width>0</Width>
                        <Height>0</Height>
                        <ProductDescription>Books</ProductDescription>
                        <PackageType>Pallets_48x48</PackageType>
                        <IsStackable>false</IsStackable>
                        <DeclaredValue>0</DeclaredValue>
                        <CommodityType>GeneralMerchandise</CommodityType>
                        <ContentType>NewCommercialGoods</ContentType>
                        <IsHazardousMaterial>false</IsHazardousMaterial>
                        <PieceCount>5</PieceCount>
                        <ItemNumber>0</ItemNumber>
                      </Product>
                    </ShipmentProducts>
                    <ShipmentContacts />
                  </QuoteShipment>
                </request>
                <user>
                  <Name>[email protected]</Name>
                  <Password>password</Password>
                </user>
              </GetRatingEngineQuote>
            </soap:Body>
            </soap:Envelope>";

(J'ai édité ce à contenir mon xml réel, car il peut procurer un certain point de vue

Je veux l'envoyer à http://www.someexample.com et obtenir une réponse. Aussi, ai-je besoin de le coder? J'ai fait beaucoup de l'envoi de xml et-vient avec android, et n'a jamais eu, mais qui pourrait être une partie de mon problème.

Ma tentative pour envoyer l'information ressemble à ceci

$xml_post_string = 'XML='.urlencode($xml->asXML());  
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, 'https://b2b.Freightquote.com/WebService/QuoteService.asmx');
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_POSTFIELDS, $xml_post_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$response = curl_exec($ch);
curl_close($ch);
quel est le code php pour envoyer ce XML via la poste ?
J'ai édité pour ajouter
ok...donc, ce n'est pas de travail? obtenez-vous l'un message d'erreur spécifique ?
pas d'erreur... juste un écran blanc et pas de sortie. Je fais cela dans codeigniter et à moins que quelque chose ne va catastrophiquement mal, je devrait au moins obtenir le code html sans aucune sortie de ce si quelque chose s'est catastrophiquement mauvais
Donc je suis en supposant que vous êtes disant que ma boucle est correcte à 100%?

OriginalL'auteur ed209 | 2013-07-22