Hi i have this weird problem i am trying to get data from a soap API from this XML file
some part of my XML file:
<s:element name="GetConsignmentTrackingHistoryResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="GetConsignmentTrackingHistoryResult" type="tns:ArrayOfSpGetConsignmentTrackingByCNNumberResult"/>
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="ArrayOfSpGetConsignmentTrackingByCNNumberResult">
<s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="spGetConsignmentTrackingByCNNumberResult" nillable="true" type="tns:spGetConsignmentTrackingByCNNumberResult"/>
</s:sequence>
</s:complexType>
<s:complexType name="spGetConsignmentTrackingByCNNumberResult">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="CNNumber" type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="CurLocCityName" type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="TrackingMessage" type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="TrackingStatus" type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="CurrLocCode" type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="ConsigneeName" type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="ConsignerName" type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="OriginBranchCode" type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="DestinationBranchCode" type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="ServiceType" type="s:string"/>
<s:element minOccurs="1" maxOccurs="1" name="NoOfPieces" nillable="true" type="s:int"/>
<s:element minOccurs="1" maxOccurs="1" name="Weight" nillable="true" type="s:double"/>
<s:element minOccurs="1" maxOccurs="1" name="CustomerType" nillable="true" type="s:int"/>
<s:element minOccurs="0" maxOccurs="1" name="ExpCenCode" type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="ExpCenName" type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="ExpCenSName" type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="CostCenCode" type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="ExpCenDescription" type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="ClientAccountNumber" type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="OriginBranchName" type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="DestBranchName" type="s:string"/>
<s:element minOccurs="1" maxOccurs="1" name="Diliverytime" nillable="true" type="s:dateTime"/>
<s:element minOccurs="0" maxOccurs="1" name="DilvReceivedBy" type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="DilvRiderComments" type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="DilvStatus" type="s:string"/>
<s:element minOccurs="1" maxOccurs="1" name="TrackingTime" nillable="true" type="s:dateTime"/>
<s:element minOccurs="1" maxOccurs="1" name="CNDate" nillable="true" type="s:dateTime"/>
<s:element minOccurs="0" maxOccurs="1" name="Reason" type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="riderCode" type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="RiderName" type="s:string"/>
</s:sequence>
</s:complexType>
</s:schema>
</wsdl:types>
Using this method in PHP
$requestParams = array(
'consignmentNumber' => $cn
);
$client = new SoapClient('http://ift.tt/1obh00n');
$response = $client->GetConsignmentTrackingHistory($requestParams);
$tracking_history = object_to_array($response);
$testing=$tracking_history;
//Goes inside this $row variable
$row = $tracking_history['GetConsignmentTrackingHistoryResult']
['spGetConsignmentTrackingByCNNumberResult'];
when i print_r this $row ARRAY it outputs correctly in ARRAY form
Array ( [0] => Array ( [CNNumber] => 231112777401 [CurLocCityName] => LAHORE [TrackingMessage] => Consignment is NEW [TrackingStatus] => NEW [CurrLocCode] => 1 [ConsigneeName] => f [ConsignerName] => BEST WESTREN REGENCY HOTEL [OriginBranchCode] => 43 [DestinationBranchCode] => 1 [ServiceType] => overnight [NoOfPieces] => 1 [Weight] => 0.5 [CustomerType] => 2 [ClientAccountNumber] => 2008 [OriginBranchName] => ISLAMABAD [DestBranchName] => LAHORE [Diliverytime] => 2001-01-01T10:20:00 [DilvReceivedBy] => MAJID [DilvStatus] => DELIVERED [TrackingTime] => 2014-06-26T20:01:03.943 [CNDate] => 2014-06-26T20:01:07.937 [riderCode] => 3414 ) [1] => Array ( [CNNumber] => 231112777401 [CurLocCityName] => LAHORE [TrackingMessage] => Consignment is out for delivery at LAHORE on Jun 27 2014 8:38:10:670AM [Runsheet #: 201400231341 ] [TrackingStatus] => RUNSHEET [CurrLocCode] => 1 [ConsigneeName] => f [ConsignerName] => BEST WESTREN REGENCY HOTEL [OriginBranchCode] => 43 [DestinationBranchCode] => 1 [ServiceType] => overnight [NoOfPieces] => 1 [Weight] => 0.5 [CustomerType] => 2 [ClientAccountNumber] => 2008 [OriginBranchName] => ISLAMABAD [DestBranchName] => LAHORE [Diliverytime] => 2001-01-01T10:20:00 [DilvReceivedBy] => MAJID [DilvStatus] => DELIVERED [TrackingTime] => 2014-06-27T08:38:10.67 [CNDate] => 2014-06-26T20:01:07.937 [riderCode] => 3414 ) [2] => Array ( [CNNumber] => 231112777401 [CurLocCityName] => LAHORE [TrackingMessage] => Consignment is DELIVERED [TrackingStatus] => DELIVERED [CurrLocCode] => 1 [ConsigneeName] => f [ConsignerName] => BEST WESTREN REGENCY HOTEL [OriginBranchCode] => 43 [DestinationBranchCode] => 1 [ServiceType] => overnight [NoOfPieces] => 1 [Weight] => 0.5 [CustomerType] => 2 [ClientAccountNumber] => 2008 [OriginBranchName] => ISLAMABAD [DestBranchName] => LAHORE [Diliverytime] => 2001-01-01T10:20:00 [DilvReceivedBy] => MAJID [DilvStatus] => DELIVERED [TrackingTime] => 2014-06-27T19:23:30.5 [CNDate] => 2014-06-26T20:01:07.937 [riderCode] => 3414 ) )
but the problem it that when i try to get a specific element from array like this
echo $row['CNNumber']; or echo $row['[CNNumber]'] or echo $row["CNNumber"] or i tried with any other element it gives me NOTICE undefined index CNNumber or any other elements
what am i doing wrong can anybody please answer
No comments:
Post a Comment