php-windows Digest 23 Aug 2011 17:27:18 -0000 Issue 3969

Topics (messages 30691 through 30693):

Re: PHP 5.3 SoapClient Stripping HTML special characters
        30691 by: James Crow
        30692 by: Richard Quadling

EasyPHP (Wamp Server) 5.3.8.0 with PHP 5.3.8 released
        30693 by: EasyPHP

Administrivia:

To subscribe to the digest, e-mail:
        php-windows-digest-subscr...@lists.php.net

To unsubscribe from the digest, e-mail:
        php-windows-digest-unsubscr...@lists.php.net

To post to the list, e-mail:
        php-wind...@lists.php.net


----------------------------------------------------------------------
--- Begin Message ---
On Fri, 19 Aug 2011 21:12:21 +0100, Richard Quadling <rquadl...@gmail.com>
wrote:
> On 19 August 2011 19:28, James Crow <ja...@ultratans.com> wrote:
>> On Fri, 19 Aug 2011 17:30:27 +0100, Richard Quadling
>> <rquadl...@gmail.com>
>> wrote:
>>> On 19 August 2011 17:13, James Crow <ja...@ultratans.com> wrote:
>>>> On Fri, 19 Aug 2011 16:33:43 +0100, Richard Quadling
>>>> <rquadl...@gmail.com>
>>>> wrote:
>>>>> On 19 August 2011 16:16, James Crow <ja...@ultratans.com> wrote:
>>>>>> Hi all,
>>>>>>
>>>>>> I am using the SOAP client to retrieve data from a web server. One
>>>> field
>>>>>> in the returned object is a text string that may contain embedded
>>>>>> carriage
>>>>>> returns. If I look at the raw packets they appear as '
>>>> ' in the
>>>>>> string.
>>>>>> When I get the string in the SoapClient the carriage return has
been
>>>>>> stripped. So far I have been unable to find a setting that will
leave
>>>>>> this
>>>>>> embedded character in place.
>>>>>>
>>>>>> Can someone point me in the right direction?
>>>>>>
>>>>>> Thanks,
>>>>>> James
>>>>>
>>>>> Can you supply a WSDL URL for the service? I can quickly verify what
>>>>> you are seeing.
>>>>>
>>>>> Can you tell us how you perceive the missing character? If you are
>>>>> echoing it to a browser, then there will be no visual line break as
>>>>> that is not a HTML character.
>>>>>
>>>>> But if you wrap the output in <pre>...</pre> tags, you should see it
>>>> just
>>>>> fine.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Richard Quadling
>>>>> Twitter : EE : Zend : PHPDoc
>>>>> @RQuadling : e-e.com/M_248814.html : bit.ly/9O8vFY : bit.ly/lFnVea
>>>>
>>>> Richard,
>>>>
>>>> Thanks for the response. My initial email appears garbled somewhat.
>>>> Between the single quotes should have been 
>>>>
>>>> The WDSL is:
>>>>
http://clients.mindbodyonline.com/api/0_5/AppointmentService.asmx?WSDL
>>>>
>>>> I am using functions which return (among other things) an Appointment
>>>> object. This Appointment object has a property named Notes. The Notes
>>>> item
>>>> in their software is displayed and edited in a html textarea field.
If
>> a
>>>> newline is entered in the textarea field I need it to be present in
the
>>>> string in the SoapClient.
>>>>
>>>> To actually connect to with a SOAP client requires a username and
>>>> password.
>>>>
>>>> Thanks,
>>>> James
>>>>
>>>>
>>>
>>> What you need to determine is the EXACT content.
>>>
>>> Can you dump the $o_Service->__getLastResponse() to a file, and zip
it?
>>>
>>> I have a framework that I use to test SOAP services. It isn't 100%
>>> automatic, but it doesn't take too long.
>>>
>>> I've got it working as far as I can without the credentials.
>>>
>>> Hopefully you can add them in and the rest of the code should work.
>>>
>>> I assume it is just a SoapHeader you need to add.
>>>
>>> Running the consume.php script currently outputs ...
>>>
>>> Request Headers
>>> ---------------
>>> POST /api/0_5/AppointmentService.asmx HTTP/1.1
>>> Host: clients.mindbodyonline.com
>>> Connection: Keep-Alive
>>> User-Agent: PHP
>>> Content-Type: text/xml; charset=utf-8
>>> SOAPAction:
"http://clients.mindbodyonline.com/api/0_5/GetScheduleItems";
>>> Content-Length: 742
>>>
>>>
>>> Request (XML)
>>> -------------
>>> <?xml version="1.0" encoding="utf-8"?>
>>> <SOAP-ENV:Envelope
>>> xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/";
>>>                  
>>>  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
>>>
>> xmlns:ns1="http://clients.mindbodyonline.com/api/0_5";>
>>>   <SOAP-ENV:Body>
>>>     <ns1:GetScheduleItems>
>>>       <ns1:Request>
>>>         <ns1:XMLDetail xsi:nil="true" />
>>>         <ns1:PageSize xsi:nil="true" />
>>>         <ns1:CurrentPageIndex xsi:nil="true" />
>>>         <ns1:LocationIDs>
>>>           <ns1:int>1</ns1:int>
>>>           <ns1:int>2</ns1:int>
>>>           <ns1:int>3</ns1:int>
>>>         </ns1:LocationIDs>
>>>         <ns1:StaffIDs>
>>>           <ns1:long>100</ns1:long>
>>>           <ns1:long>200</ns1:long>
>>>           <ns1:long>300</ns1:long>
>>>         </ns1:StaffIDs>
>>>         <ns1:StartDate>2011-01-01T00:00:00Z</ns1:StartDate>
>>>         <ns1:EndDate>2011-12-31T23:59:59Z</ns1:EndDate>
>>>       </ns1:Request>
>>>     </ns1:GetScheduleItems>
>>>   </SOAP-ENV:Body>
>>> </SOAP-ENV:Envelope>
>>>
>>> Response Headers
>>> ----------------
>>> HTTP/1.1 200 OK
>>> Cache-Control: private, max-age=0
>>> Content-Type: text/xml; charset=utf-8
>>> Server: Microsoft-IIS/7.5
>>> X-AspNet-Version: 2.0.50727
>>> X-Powered-By: ASP.NET
>>> P3P: CAO DSP COR CUR TAIa OUR NOR UNI STA
>>> Date: Fri, 19 Aug 2011 16:28:44 GMT
>>> Content-Length: 614
>>>
>>> Response (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>
>>>     <GetScheduleItemsResponse
>>>     xmlns="http://clients.mindbodyonline.com/api/0_5";>
>>>       <GetScheduleItemsResult>
>>>         <Status>InvalidCredentials</Status>
>>>         <Message>SourceCredentials must be provided.</Message>
>>>         <XMLDetail>Full</XMLDetail>
>>>         <ResultCount>0</ResultCount>
>>>         <CurrentPageIndex>0</CurrentPageIndex>
>>>         <TotalPageCount>0</TotalPageCount>
>>>       </GetScheduleItemsResult>
>>>     </GetScheduleItemsResponse>
>>>   </soap:Body>
>>> </soap:Envelope>
>>>
>>>
>>> Response (Interpreted)
>>> ----------------------
>>> GetScheduleItemsResult Object
>>> (
>>>     [StaffMembers] =>
>>>     [Status] => InvalidCredentials
>>>     [Message] => SourceCredentials must be provided.
>>>     [XMLDetail] => Full
>>>     [ResultCount] => 0
>>>     [CurrentPageIndex] => 0
>>>     [TotalPageCount] => 0
>>> )
>>
>> I entered my login credentials in the consume.php script and changed it
>> to
>> dump __getLastResponse() to a text file. I do not want to include the
>> entire file because it contains customer information, but I did look
>> through the file with vi. The Notes /Notes XMl items do not contain
>> embedded carriage returns or line feeds. I think this is a bug in the
>> SOAP
>> service and not in the PHP SoapClient.
>>
>> Thanks,
>> James
>>
>>
> 
> So, at this stage, proving the lack of the returns is all I can do.
> 
> Are you responsible for the service?

Unfortunately I am not responsible for the service. I can only bring it
their attention and try to get them to fix it. Using your code, it is easy
to display exactly what the problem is.

Thank you,
James


--- End Message ---
--- Begin Message ---
On 19 August 2011 21:18, James Crow <ja...@ultratans.com> wrote:
> On Fri, 19 Aug 2011 21:12:21 +0100, Richard Quadling <rquadl...@gmail.com>
> wrote:
>> On 19 August 2011 19:28, James Crow <ja...@ultratans.com> wrote:
>>> On Fri, 19 Aug 2011 17:30:27 +0100, Richard Quadling
>>> <rquadl...@gmail.com>
>>> wrote:
>>>> On 19 August 2011 17:13, James Crow <ja...@ultratans.com> wrote:
>>>>> On Fri, 19 Aug 2011 16:33:43 +0100, Richard Quadling
>>>>> <rquadl...@gmail.com>
>>>>> wrote:
>>>>>> On 19 August 2011 16:16, James Crow <ja...@ultratans.com> wrote:
>>>>>>> Hi all,
>>>>>>>
>>>>>>> I am using the SOAP client to retrieve data from a web server. One
>>>>> field
>>>>>>> in the returned object is a text string that may contain embedded
>>>>>>> carriage
>>>>>>> returns. If I look at the raw packets they appear as '
>>>>> ' in the
>>>>>>> string.
>>>>>>> When I get the string in the SoapClient the carriage return has
> been
>>>>>>> stripped. So far I have been unable to find a setting that will
> leave
>>>>>>> this
>>>>>>> embedded character in place.
>>>>>>>
>>>>>>> Can someone point me in the right direction?
>>>>>>>
>>>>>>> Thanks,
>>>>>>> James
>>>>>>
>>>>>> Can you supply a WSDL URL for the service? I can quickly verify what
>>>>>> you are seeing.
>>>>>>
>>>>>> Can you tell us how you perceive the missing character? If you are
>>>>>> echoing it to a browser, then there will be no visual line break as
>>>>>> that is not a HTML character.
>>>>>>
>>>>>> But if you wrap the output in <pre>...</pre> tags, you should see it
>>>>> just
>>>>>> fine.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Richard Quadling
>>>>>> Twitter : EE : Zend : PHPDoc
>>>>>> @RQuadling : e-e.com/M_248814.html : bit.ly/9O8vFY : bit.ly/lFnVea
>>>>>
>>>>> Richard,
>>>>>
>>>>> Thanks for the response. My initial email appears garbled somewhat.
>>>>> Between the single quotes should have been
>>>>>
>>>>> The WDSL is:
>>>>>
> http://clients.mindbodyonline.com/api/0_5/AppointmentService.asmx?WSDL
>>>>>
>>>>> I am using functions which return (among other things) an Appointment
>>>>> object. This Appointment object has a property named Notes. The Notes
>>>>> item
>>>>> in their software is displayed and edited in a html textarea field.
> If
>>> a
>>>>> newline is entered in the textarea field I need it to be present in
> the
>>>>> string in the SoapClient.
>>>>>
>>>>> To actually connect to with a SOAP client requires a username and
>>>>> password.
>>>>>
>>>>> Thanks,
>>>>> James
>>>>>
>>>>>
>>>>
>>>> What you need to determine is the EXACT content.
>>>>
>>>> Can you dump the $o_Service->__getLastResponse() to a file, and zip
> it?
>>>>
>>>> I have a framework that I use to test SOAP services. It isn't 100%
>>>> automatic, but it doesn't take too long.
>>>>
>>>> I've got it working as far as I can without the credentials.
>>>>
>>>> Hopefully you can add them in and the rest of the code should work.
>>>>
>>>> I assume it is just a SoapHeader you need to add.
>>>>
>>>> Running the consume.php script currently outputs ...
>>>>
>>>> Request Headers
>>>> ---------------
>>>> POST /api/0_5/AppointmentService.asmx HTTP/1.1
>>>> Host: clients.mindbodyonline.com
>>>> Connection: Keep-Alive
>>>> User-Agent: PHP
>>>> Content-Type: text/xml; charset=utf-8
>>>> SOAPAction:
> "http://clients.mindbodyonline.com/api/0_5/GetScheduleItems";
>>>> Content-Length: 742
>>>>
>>>>
>>>> Request (XML)
>>>> -------------
>>>> <?xml version="1.0" encoding="utf-8"?>
>>>> <SOAP-ENV:Envelope
>>>> xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/";
>>>>
>>>>  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
>>>>
>>> xmlns:ns1="http://clients.mindbodyonline.com/api/0_5";>
>>>>   <SOAP-ENV:Body>
>>>>     <ns1:GetScheduleItems>
>>>>       <ns1:Request>
>>>>         <ns1:XMLDetail xsi:nil="true" />
>>>>         <ns1:PageSize xsi:nil="true" />
>>>>         <ns1:CurrentPageIndex xsi:nil="true" />
>>>>         <ns1:LocationIDs>
>>>>           <ns1:int>1</ns1:int>
>>>>           <ns1:int>2</ns1:int>
>>>>           <ns1:int>3</ns1:int>
>>>>         </ns1:LocationIDs>
>>>>         <ns1:StaffIDs>
>>>>           <ns1:long>100</ns1:long>
>>>>           <ns1:long>200</ns1:long>
>>>>           <ns1:long>300</ns1:long>
>>>>         </ns1:StaffIDs>
>>>>         <ns1:StartDate>2011-01-01T00:00:00Z</ns1:StartDate>
>>>>         <ns1:EndDate>2011-12-31T23:59:59Z</ns1:EndDate>
>>>>       </ns1:Request>
>>>>     </ns1:GetScheduleItems>
>>>>   </SOAP-ENV:Body>
>>>> </SOAP-ENV:Envelope>
>>>>
>>>> Response Headers
>>>> ----------------
>>>> HTTP/1.1 200 OK
>>>> Cache-Control: private, max-age=0
>>>> Content-Type: text/xml; charset=utf-8
>>>> Server: Microsoft-IIS/7.5
>>>> X-AspNet-Version: 2.0.50727
>>>> X-Powered-By: ASP.NET
>>>> P3P: CAO DSP COR CUR TAIa OUR NOR UNI STA
>>>> Date: Fri, 19 Aug 2011 16:28:44 GMT
>>>> Content-Length: 614
>>>>
>>>> Response (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>
>>>>     <GetScheduleItemsResponse
>>>>     xmlns="http://clients.mindbodyonline.com/api/0_5";>
>>>>       <GetScheduleItemsResult>
>>>>         <Status>InvalidCredentials</Status>
>>>>         <Message>SourceCredentials must be provided.</Message>
>>>>         <XMLDetail>Full</XMLDetail>
>>>>         <ResultCount>0</ResultCount>
>>>>         <CurrentPageIndex>0</CurrentPageIndex>
>>>>         <TotalPageCount>0</TotalPageCount>
>>>>       </GetScheduleItemsResult>
>>>>     </GetScheduleItemsResponse>
>>>>   </soap:Body>
>>>> </soap:Envelope>
>>>>
>>>>
>>>> Response (Interpreted)
>>>> ----------------------
>>>> GetScheduleItemsResult Object
>>>> (
>>>>     [StaffMembers] =>
>>>>     [Status] => InvalidCredentials
>>>>     [Message] => SourceCredentials must be provided.
>>>>     [XMLDetail] => Full
>>>>     [ResultCount] => 0
>>>>     [CurrentPageIndex] => 0
>>>>     [TotalPageCount] => 0
>>>> )
>>>
>>> I entered my login credentials in the consume.php script and changed it
>>> to
>>> dump __getLastResponse() to a text file. I do not want to include the
>>> entire file because it contains customer information, but I did look
>>> through the file with vi. The Notes /Notes XMl items do not contain
>>> embedded carriage returns or line feeds. I think this is a bug in the
>>> SOAP
>>> service and not in the PHP SoapClient.
>>>
>>> Thanks,
>>> James
>>>
>>>
>>
>> So, at this stage, proving the lack of the returns is all I can do.
>>
>> Are you responsible for the service?
>
> Unfortunately I am not responsible for the service. I can only bring it
> their attention and try to get them to fix it. Using your code, it is easy
> to display exactly what the problem is.
>
> Thank you,
> James
>
>

Glad to have helped.



-- 
Richard Quadling
Twitter : EE : Zend : PHPDoc
@RQuadling : e-e.com/M_248814.html : bit.ly/9O8vFY : bit.ly/lFnVea

--- End Message ---
--- Begin Message ---
Hi

EasyPHP (Wamp Server) 5.3.8.0 is out and includes PHP 5.3.8 VC9,
Apache 2.2.19 VC9, MySQL 5.5.15, PhpMyAdmin 3.4.3.2,  Xdebug 2.1.2 and
development tools.

Enjoy!

Website : www.easyphp.org
Screenshots : www.easyphp.org/screenshots.php
Facebook page : www.facebook.com/easywamp
Twitter : www.twitter.com/easyphp

--- End Message ---

Reply via email to