ILIAS
Release_4_0_x_branch Revision 61816
◀ ilDoc Overview
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
Examples
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Groups
Pages
wsdlclient4.php
Go to the documentation of this file.
1
<?php
2
/*
3
* $Id: wsdlclient4.php,v 1.6 2005/05/12 21:42:06 snichol Exp $
4
*
5
* WSDL client sample, based on soap builders round 2 interop.
6
*
7
* Service: WSDL
8
* Payload: rpc/encoded
9
* Transport: http
10
* Authentication: none
11
*/
12
require_once(
'../lib/nusoap.php'
);
13
/*
14
* Grab post vars, if present
15
*/
16
$method
= isset(
$_POST
[
'method'
]) ?
$_POST
[
'method'
] :
''
;
17
$null
= isset(
$_POST
[
'null'
]) ?
$_POST
[
'null'
] :
''
;
18
$empty
= isset(
$_POST
[
'empty'
]) ?
$_POST
[
'empty'
] :
''
;
19
$proxyhost
= isset(
$_POST
[
'proxyhost'
]) ?
$_POST
[
'proxyhost'
] :
''
;
20
$proxyport
= isset(
$_POST
[
'proxyport'
]) ?
$_POST
[
'proxyport'
] :
''
;
21
$proxyusername
= isset(
$_POST
[
'proxyusername'
]) ?
$_POST
[
'proxyusername'
] :
''
;
22
$proxypassword
= isset(
$_POST
[
'proxypassword'
]) ?
$_POST
[
'proxypassword'
] :
''
;
23
/*
24
* When no method has been specified, give the user a choice
25
*/
26
if
(
$method
==
''
) {
27
echo
'<form name="MethodForm" method="POST">'
;
28
echo
'<input type="hidden" name="proxyhost" value="'
.
$proxyhost
.
'">'
;
29
echo
'<input type="hidden" name="proxyport" value="'
.
$proxyport
.
'">'
;
30
echo
'<input type="hidden" name="proxyusername" value="'
.
$proxyusername
.
'">'
;
31
echo
'<input type="hidden" name="proxypassword" value="'
.
$proxypassword
.
'">'
;
32
echo
'Method: <select name="method">'
;
33
echo
'<option>echoString</option>'
;
34
echo
'<option>echoStringArray</option>'
;
35
echo
'<option>echoInteger</option>'
;
36
echo
'<option>echoIntegerArray</option>'
;
37
echo
'<option>echoFloat</option>'
;
38
echo
'<option>echoFloatArray</option>'
;
39
echo
'<option>echoStruct</option>'
;
40
echo
'<option>echoStructArray</option>'
;
41
echo
'<option>echoVoid</option>'
;
42
echo
'<option>echoBoolean</option>'
;
43
echo
'<option>echoBase64</option>'
;
44
echo
'</select><br><br>'
;
45
echo
'Null parameter? <input type="checkbox" name="null" value="1"><br>'
;
46
echo
'Empty array? <input type="checkbox" name="empty" value="1"><br><br>'
;
47
echo
'<input type="submit" value=" Execute ">'
;
48
echo
'</form>'
;
49
exit
();
50
}
51
/*
52
* Execute the specified method
53
*/
54
if
(
$method
==
'echoString'
) {
55
if
(
$null
!=
'1'
) {
56
$params
= array(
'inputString'
=>
'If you cannot echo a string, you probably cannot do much'
);
57
}
else
{
58
$params
= array(
'inputString'
=> null);
59
}
60
}
elseif
(
$method
==
'echoStringArray'
) {
61
if
(
$null
!=
'1'
) {
62
if
(
$empty
!=
'1'
) {
63
$params
= array(
'inputStringArray'
=> array(
'String 1'
,
'String 2'
,
'String Three'
));
64
}
else
{
65
$params
= array(
'inputStringArray'
=> array());
66
}
67
}
else
{
68
$params
= array(
'inputStringArray'
=> null);
69
}
70
}
elseif
(
$method
==
'echoInteger'
) {
71
if
(
$null
!=
'1'
) {
72
$params
= array(
'inputInteger'
=> 329);
73
}
else
{
74
$params
= array(
'inputInteger'
=> null);
75
}
76
}
elseif
(
$method
==
'echoIntegerArray'
) {
77
if
(
$null
!=
'1'
) {
78
if
(
$empty
!=
'1'
) {
79
$params
= array(
'inputIntegerArray'
=> array(451, 43, -392220011, 1, 1, 2, 3, 5, 8, 13, 21));
80
}
else
{
81
$params
= array(
'inputIntegerArray'
=> array());
82
}
83
}
else
{
84
$params
= array(
'inputIntegerArray'
=> null);
85
}
86
}
elseif
(
$method
==
'echoFloat'
) {
87
if
(
$null
!=
'1'
) {
88
$params
= array(
'inputFloat'
=> 3.14159265);
89
}
else
{
90
$params
= array(
'inputFloat'
=> null);
91
}
92
}
elseif
(
$method
==
'echoFloatArray'
) {
93
if
(
$null
!=
'1'
) {
94
if
(
$empty
!=
'1'
) {
95
$params
= array(
'inputFloatArray'
=> array(1.1, 2.2, 3.3, 1/4, -1/9));
96
}
else
{
97
$params
= array(
'inputFloatArray'
=> array());
98
}
99
}
else
{
100
$params
= array(
'inputFloatArray'
=> null);
101
}
102
}
elseif
(
$method
==
'echoStruct'
) {
103
if
(
$null
!=
'1'
) {
104
$struct = array(
'varString'
=>
'who'
,
'varInt'
=> 2,
'varFloat'
=> 3.14159);
105
$params
= array(
'inputStruct'
=> $struct);
106
}
else
{
107
$params
= array(
'inputStruct'
=> null);
108
}
109
}
elseif
(
$method
==
'echoStructArray'
) {
110
if
(
$null
!=
'1'
) {
111
if
(
$empty
!=
'1'
) {
112
$structs[] = array(
'varString'
=>
'who'
,
'varInt'
=> 2,
'varFloat'
=> 3.14159);
113
$structs[] = array(
'varString'
=>
'when'
,
'varInt'
=> 4,
'varFloat'
=> 99.9876);
114
$params
= array(
'inputStructArray'
=> $structs);
115
}
else
{
116
$params
= array(
'inputStructArray'
=> array());
117
}
118
}
else
{
119
$params
= array(
'inputStructArray'
=> null);
120
}
121
}
elseif
(
$method
==
'echoVoid'
) {
122
$params
= array();
123
}
elseif
(
$method
==
'echoBoolean'
) {
124
if
(
$null
!=
'1'
) {
125
$params
= array(
'inputBoolean'
=>
false
);
126
}
else
{
127
$params
= array(
'inputBoolean'
=> null);
128
}
129
}
elseif
(
$method
==
'echoBase64'
) {
130
if
(
$null
!=
'1'
) {
131
$params
= array(
'inputBase64'
=> base64_encode(
'You must encode the data you send; NuSOAP will automatically decode the data it receives'
));
132
}
else
{
133
$params
= array(
'inputBase64'
=> null);
134
}
135
}
else
{
136
echo
'Sorry, I do not know about method '
.
$method
;
137
exit
();
138
}
139
$client
=
new
soapclient(
'http://www.scottnichol.com/samples/round2_base_server.php?wsdl&debug=1'
,
true
,
140
$proxyhost
,
$proxyport
,
$proxyusername
,
$proxypassword
);
141
$err
=
$client
->getError();
142
if
(
$err
) {
143
echo
'<h2>Constructor error</h2><pre>'
.
$err
.
'</pre>'
;
144
}
145
$client
->useHTTPPersistentConnection();
146
echo
'<h2>Execute '
.
$method
.
'</h2>'
;
147
$result
=
$client
->call(
$method
,
$params
);
148
// Check for a fault
149
if
(
$client
->fault) {
150
echo
'<h2>Fault</h2><pre>'
;
151
print_r(
$result
);
152
echo
'</pre>'
;
153
}
else
{
154
// Check for errors
155
$err
=
$client
->getError();
156
if
(
$err
) {
157
// Display the error
158
echo
'<h2>Error</h2><pre>'
.
$err
.
'</pre>'
;
159
}
else
{
160
// Display the result
161
echo
'<h2>Result</h2><pre>'
;
162
print_r((!is_bool(
$result
)) ?
$result
: (
$result
?
'true'
:
'false'
));
163
echo
'</pre>'
;
164
// And execute again to test persistent connection
165
echo
'<h2>Execute '
.
$method
.
' again to test persistent connection (see debug)</h2>'
;
166
$client
->debug(
"*** execute again to test persistent connection ***"
);
167
$result
=
$client
->call(
$method
,
$params
);
168
// And again...
169
$client
->debug(
"*** execute again ... ***"
);
170
$result
=
$client
->call(
$method
,
$params
);
171
}
172
}
173
echo
'<h2>Request</h2><pre>'
. htmlspecialchars(
$client
->request, ENT_QUOTES) .
'</pre>'
;
174
echo
'<h2>Response</h2><pre>'
. htmlspecialchars(
$client
->response, ENT_QUOTES) .
'</pre>'
;
175
echo
'<h2>Debug</h2><pre>'
. htmlspecialchars(
$client
->debug_str, ENT_QUOTES) .
'</pre>'
;
176
?>
webservice
soap
lib2
samples
wsdlclient4.php
Generated on Wed Apr 27 2016 19:01:55 for ILIAS by
1.8.1.2 (using
Doxyfile
)