|
|
|
#1 |
|
Messages: n/a
Hébergeur: |
Hi All,
I'm struggling with the WDSL restrictions in PHP/SOAP for a while know. I would like to create some simple restrictions in my WDSL file. The script are running both on the same server with PHP Version 5.2.6 with the official soap extension. On both my client and server there is some error configuration: error_reporting(E_ALL); ini_set("soap.wsdl_cache_enabled", "0"); use_soap_error_handler(true); In my WDSL file there are some restrictions like: A rule to accept only numbers, PHP/SOAP is translating not numbers to 0. (but I want an error message!) <xsd:element name="streetNumber" minOccurs="1" maxOccurs="1" type="xsd:int"> Almost the same for this more advanced restriction, you can provide every string. There is no error message and the whole string is accepted by my server. <xsd:simpleType name="Email"> <xsd:restriction base="xsd:string"> <xsd:pattern value="^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*$"> </xsd:pattern> </xsd:restriction> </xsd:simpleType> I hope there are some people that have some more experience with PHP/SOAP and the use of restrictions who can me with this! Best regards, Paul |
|
|
|
#2 |
|
Messages: n/a
Hébergeur: |
> I'm struggling with the WDSL restrictions in PHP/SOAP for a while
Sorry, I mean WSDL instead of WDSL. But of course the problem stays the same :-) |
|
|
|
#3 |
|
Messages: n/a
Hébergeur: |
On May 9, 10:01am, p...@vanbrouwershaven.com (Paul van Brouwershaven)
wrote: > Hi All, > > I'm struggling with the WDSL restrictions in PHP/SOAP for a while know. I would like to create some > simple restrictions in my WDSL file. > > The script are running both on the same server with PHP Version 5.2.6 withthe official soap extension. > > On both my client and server there is some error configuration: > > error_reporting(E_ALL); > > ini_set("soap.wsdl_cache_enabled", "0"); > use_soap_error_handler(true); > > In my WDSL file there are some restrictions like: > > A rule to accept only numbers, PHP/SOAP is translating not numbers to 0. (but I want an error message!) > > <xsd:element name="streetNumber" minOccurs="1" maxOccurs="1" type="xsd:int"> > > Almost the same for this more advanced restriction, you can provide every string. There is no error > message and the whole string is accepted by my server. > > <xsd:simpleType name="Email"> > <xsd:restriction base="xsd:string"> > <xsd:pattern > value="^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*$"> > </xsd:pattern> > </xsd:restriction> > </xsd:simpleType> > > I hope there are some people that have some more experience with PHP/SOAP and the use of > restrictions who can me with this! > > Best regards, > > Paul In my experience of PHP/SOAP developement this is very complex to achieve. To get around this I had to build a function which took all the data and compared it against a database of all accepted values, and then return error message saying what was sent and what were they accepted values for this field. |
|
![]() |
| Outils de la discussion | |
|
|