-
Bug
-
Resolution: Won't Do
-
Minor
-
None
-
3.3.3, 3.4
-
MOODLE_33_STABLE, MOODLE_34_STABLE
-
wip-
MDL-60977-master -
In Moodle 3.0 and below we used xmlrpc in Zend
In Moodle 3.2 and above the xmlrpc_encode_request() was fixed by MDL-57775 (fixed in 3.2.5, 3.3.2)
Websites using Moodle 3.1 send requests to moodle.net that are weirdly encoded. Moodle.net can not decode these requests.
Example:
$str = 'Πλατφόρμα';
|
$encoded = xmlrpc_encode_request('test', ['s' => $str]);
|
$method = null;
|
$decoded = xmlrpc_decode_request($encoded, $method);
|
echo $str."\nENCODED=\n".$encoded."\nDECODED=\n".$decoded."\n";
|
I have tried different arguments to xmlrpc_decode_request() as suggested in MDLSITE-4726 but no luck, the string can not be decoded at all.
output:
$ php testencoding.php
|
expat reports error code 14
|
description: reference to invalid character number
|
line: 11
|
column: 14
|
byte index: 187
|
total bytes: 0
|
|
data beginning 10 before byte index: <string> »±„&
|
|
Πλατφόρμα
|
ENCODED=
|
<?xml version="1.0" encoding="iso-8859-1"?>
|
<methodCall>
|
<methodName>test</methodName>
|
<params>
|
<param>
|
<value>
|
<struct>
|
<member>
|
<name>s</name>
|
<value>
|
<string> »±„†Œ¼±</string>
|
</value>
|
</member>
|
</struct>
|
</value>
|
</param>
|
</params>
|
</methodCall>
|
|
DECODED=
|
- has been marked as being related by
-
MDL-57775 Payload encoding broken by XML-RPC client
- Closed
- is blocked by
-
MDL-60594 Course names not displayed correctly in the Community finder block
- Closed
- will help resolve
-
MDLSITE-4726 Sites not displaying correctly on https://moodle.net/sites
- Resolved
-
MDLSITE-4617 Some non-English language courses sent to Moodle.net do not display correctly
- Closed