The code is divided into the following sections:
demo.php-Upload process processing
PLAIN textphp:
<?php
Include ' UploadProgressMeter.class.php ';
$fileWidget = new Uploadprogressmeter ();
if ($fileWidget->uploadcomplete ()) {
Upload finished, from the IFRAME sent a JS to the main window to indicate everything OK
echo $fileWidget->finalstatus ();
Process the uploaded file ...
Exit
}
?>
Demoserver.php-ajax service-side JS, use Pear:html_ajax, direct call Uploadprogressmeterstatus class
PLAIN texthtml:
<script src= "Http://www.ooso.net/demoserver.php?client=main,request,httpclient,dispatcher,json,util" type= " Text/javascript "></script>
<script src= "Http://www.ooso.net/demoserver.php?stub=UploadProgressMeterStatus" type= "Text/javascript" > </script>
<?php echo $fileWidget->renderincludejs ();?>
Style sheet for progress bar
PLAIN TEXTCSS:
. ProgressBar {
position:relative;
padding:2px;
width:300px;
height:40px;
font-size:14px;
}
. ProgressBar. Background {
Border:solid 1px black;
width:270px;
height:20px;
}
. ProgressBar. Bar {
position:relative;
Background-color:blue;
width:0px;
height:20px;
}
Part of the form
PLAIN texthtml:
<form action= "demo.php" method= "post" enctype= "Multipart/form-data" >renderformextra ()?>>
<?php echo $fileWidget->renderhidden ();? ></form><form action= "demo.php" method= "POST" enctype= " Multipart/form-data "><label>select File: </label>
<div><?php echo $fileWidget->render ();?>
<?php echo $fileWidget->renderprogressbar ();?></div>
</form>