| 1234567891011121314151617181920212223242526272829303132333435363738394041424344 | <?php/*** Simple Ajax Uploader* Version 2.6.2* https://github.com/LPology/Simple-Ajax-Uploader** Copyright 2012-2017 LPology, LLC* Released under the MIT license** Returns upload progress updates for browsers that don't support the HTML5 File API.* Falling back to this method allows for upload progress support across virtually all browsers.**/// This "if" statement is only necessary for CORS uploads -- if you're// only doing same-domain uploads then you can delete it if you wantif (isset($_SERVER['HTTP_ORIGIN'])) {    header("Access-Control-Allow-Origin: {$_SERVER['HTTP_ORIGIN']}");    header('Access-Control-Allow-Credentials: true');    header('Access-Control-Max-Age: 86400');    // cache for 1 day}if (isset($_REQUEST['progresskey'])) {    $status = apc_fetch('upload_'.$_REQUEST['progresskey']);} else {    exit(json_encode(array('success' => false)));}$pct = 0;$size = 0;if (is_array($status)) {    if (array_key_exists('total', $status) && array_key_exists('current', $status)) {        if ($status['total'] > 0) {            $pct = round(($status['current'] / $status['total']) * 100);            $size = round($status['total'] / 1024);        }    }}echo json_encode(array('success' => true, 'pct' => $pct, 'size' => $size));
 |