ID: 34256
Updated by: [EMAIL PROTECTED]
Reported By: mpamphile at hotmail dot com
-Status: Open
+Status: Bogus
Bug Type: XML related
Operating System: win 2000 professional
PHP Version: 4.4.0
New Comment:
Try var_dump() on the result array. There's nothing wrong with it. Your
expected results are totally wrong too.
That wddx packet contains one assoc array with 11 elements.
Previous Comments:
------------------------------------------------------------------------
[2005-08-25 19:04:05] mpamphile at hotmail dot com
Description:
------------
wddx_deserialize is only returning the last array in a wddx structure
with multiple arrays.
Reproduce code:
---------------
$servercontents = "<wddxPacket
version='1.0'><header><comment></comment></header><data><struct><var
name='payment_id'><string>23</string></var><var
name='member_id'><string>4</string></var><var
name='product_id'><string>5</string></var><var
name='begin_date'><string>2005-08-23</string></var><var
name='expire_date'><string>2007-08-21</string></var><var
name='paysys_id'><string>clickbank</string></var><var
name='receipt_id'><string>C7L836H8</string></var><var
name='amount'><string>79.95</string></var><var
name='completed'><string>1</string></var><var
name='remote_addr'><string>209.94.216.188</string></var><var
name='data'><array length='2'><struct><var
name='product_id'><string>5</string></var><var
name='paysys_id'><string>clickbank</string></var><var
name='coupon'><string></string></var><var
name='action'><string>renew</string></var></struct><struct><var
name='seed'><string>23</string></var><var
name='cbpop'><string>27RG7BJQ</string></var><var
name='cbreceipt'><string>C7L836H8</string></var></struct></array></var><var
name='time'><string>20050821173210</string></var><var
name='aff_id'><string>0</string></var><var
name='payer_id'><string></string></var><var
name='coupon_id'><string>0</string></var><var
name='tm_added'><string>2005-08-21 17:31:33</string></var><var
name='tm_completed'><string>2005-08-21 17:32:10</string></var><var
name='payment_id'><string>22</string></var><var
name='member_id'><string>4</string></var><var
name='product_id'><string>4</string></var><var
name='begin_date'><string>2005-08-23</string></var><var
name='expire_date'><string>2006-08-21</string></var><var
name='paysys_id'><string>clickbank</string></var><var
name='receipt_id'><string>CDSDHXG8</string></var><var
name='amount'><string>39.95</string></var><var
name='completed'><string>1</string></var><var
name='remote_addr'><string>209.94.216.188</string></var><var
name='data'><array length='2'><struct><var
name='product_id'><string>4</string></var><var
name='paysys_id'><string>clickbank</string></var><var
name='coupon'><string></string></var><var
name='action'><string>renew</string></var></struct><struct><var
name='seed'><string>22</string></var><var
name='cbpop'><string>M2C6CHPT</string></var><var
name='cbreceipt'><string>CDSDHXG8</string></var></struct></array></var><var
name='time'><string>20050821152456</string></var><var
name='aff_id'><string>0</string></var><var
name='payer_id'><string></string></var><var
name='coupon_id'><string>0</string></var><var
name='tm_added'><string>2005-08-21 15:21:11</string></var><var
name='tm_completed'><string>2005-08-21 15:24:56</string></var><var
name='payment_id'><string>18</string></var><var
name='member_id'><string>4</string></var><var
name='product_id'><string>1</string></var><var
name='begin_date'><string>2005-08-23</string></var><var
name='expire_date'><string>2005-08-21</string></var><var
name='paysys_id'><string>clickbank</string></var><var
name='receipt_id'><string>manual</string></var><var
name='amount'><string>0.00</string></var><var
name='completed'><string>1</string></var><var
name='remote_addr'><string></string></var><var name='data'><array
length='1'><boolean value='false'/></array></var><var
name='time'><string>20050821144942</string></var><var
name='aff_id'><string>0</string></var><var
name='payer_id'><string></string></var><var
name='coupon_id'><string>0</string></var><var
name='tm_added'><string>2005-08-21 14:49:42</string></var><var
name='tm_completed'><string>2005-08-21
14:49:42</string></var></struct></data></wddxPacket>";
$xmlvalues = wddx_deserialize("$servercontents");
if(!empty($xmlvalues))
{
foreach ($xmlvalues as $key => $data)
{
echo "$key => $data<br>";
}
}
Expected result:
----------------
There are three arrays inside of the wddx structure,
payment_id => 23
member_id => 4
product_id => 5
begin_date => 2005-08-25
expire_date => 2007-08-21
paysys_id => clickbank
receipt_id => C7L836H8
amount => 79.95
completed => 1
remote_addr => 209.94.216.188
data => Array
time => 20050821173210
aff_id => 0
payer_id =>
coupon_id => 0
tm_added => 2005-08-21 17:31:33
tm_completed => 2005-08-21 17:32:10
--------------------------------------------------------------------------------
payment_id => 22
member_id => 4
product_id => 4
begin_date => 2005-08-25
expire_date => 2006-08-21
paysys_id => clickbank
receipt_id => CDSDHXG8
amount => 39.95
completed => 1
remote_addr => 209.94.216.188
data => Array
time => 20050821152456
aff_id => 0
payer_id =>
coupon_id => 0
tm_added => 2005-08-21 15:21:11
tm_completed => 2005-08-21 15:24:56
--------------------------------------------------------------------------------
payment_id => 18
member_id => 4
product_id => 1
begin_date => 2005-08-25
expire_date => 2005-08-21
paysys_id => clickbank
receipt_id => manual
amount => 0.00
completed => 1
remote_addr =>
data => Array
time => 20050821144942
aff_id => 0
payer_id =>
coupon_id => 0
tm_added => 2005-08-21 14:49:42
tm_completed => 2005-08-21 14:49:42
--------------------------------------------------------------------------------
Actual result:
--------------
It only reproduces the last one
payment_id => 18
member_id => 4
product_id => 1
begin_date => 2005-08-25
expire_date => 2005-08-21
paysys_id => clickbank
receipt_id => manual
amount => 0.00
completed => 1
remote_addr =>
data => Array
time => 20050821144942
aff_id => 0
payer_id =>
coupon_id => 0
tm_added => 2005-08-21 14:49:42
tm_completed => 2005-08-21 14:49:42
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=34256&edit=1