php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Doc Bug #59716 Missing output keys
Submitted: 2011-04-16 18:35 UTC Modified: 2012-01-07 18:25 UTC
Votes:2
Avg. Score:3.0 ± 0.0
Reproduced:0 of 0 (0.0%)
From: lowraider1 at gmail dot com Assigned: frozenfire (profile)
Status: No Feedback Package: APC (PECL)
PHP Version: 5.2.13 OS: CentOS 5.5
Private report: No CVE-ID: None
Have you experienced this issue?
Rate the importance of this bug to you:

 [2011-04-16 18:35 UTC] lowraider1 at gmail dot com
Description:
------------
Hello, i am having a strange issue, the runtime manual states:



apc.rfc1867 boolean

    RFC1867 File Upload Progress hook handler is only available if APC was compiled against PHP 5.2.0 or later. When enabled, any file uploads which includes a field called APC_UPLOAD_PROGRESS before the file field in an upload form will cause APC to automatically create an upload_key user cache entry where key is the value of the APC_UPLOAD_PROGRESS form entry.

    Note that the hidden field specified by APC_UPLOAD_PROGRESS must come before the file field, otherwise the upload progress will not work correctly.

    Note that the file upload tracking is not threadsafe at this point, so new uploads that happen while a previous one is still going will disable the tracking for the previous.

    Example #1 An apc.rfc1867 example
    <?php
    print_r(apc_fetch("upload_$_POST[APC_UPLOAD_PROGRESS]"));
    ?>

    The above example will output something similar to:

    Array
    (
        [total] => 1142543
        [current] => 1142543
        [rate] => 1828068.8
        [filename] => test
        [name] => file
        [temp_filename] => /tmp/php8F
        [cancel_upload] => 0
        [done] => 1
    )

The output i get is not the same with the one in the configuration runtime manual.

I am missing "temp_filename", "cancel_upload", "rate" from the output array.


Please tell me i am doing something wrong.


Thanks

Reproduce code:
---------------
My code is the following: 


$status = apc_fetch('upload_'.$_GET['us']);
echo json_encode($status);



Expected result:
----------------
    Array
    (
        [total] => 1142543
        [current] => 1142543
        [rate] => 1828068.8
        [filename] => test
        [name] => file
        [temp_filename] => /tmp/php8F
        [cancel_upload] => 0
        [done] => 1
    )

Actual result:
--------------
it outputs: 


{"total":5239829,"current":4643259,"filename":"myarhive.zip","name":"fup","done":0,"start_time":1302992133.9842}

Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2011-12-06 01:43 UTC] frozenfire@php.net
I've just finished closing a bug related to this, which is that the "rate" key 
will not be available until *all* file uploads are completed. Could you please 
modify your script to only check those keys once all file transfers are 
completed?

Specifically, you may need to check that the "done" key == 1.
 [2011-12-06 01:43 UTC] frozenfire@php.net
-Status: Open +Status: Feedback -Assigned To: +Assigned To: frozenfire
 [2012-01-07 18:25 UTC] frozenfire@php.net
-Status: Feedback +Status: No Feedback
 
PHP Copyright © 2001-2022 The PHP Group
All rights reserved.
Last updated: Wed Aug 17 16:05:45 2022 UTC