| 
<?php/*
 * test_upload_progress.php
 *
 * @(#) $Header: /opt2/ena/metal/forms/test_upload_progress.php,v 1.7 2008/08/16 05:12:37 mlemos Exp $
 *
 */
 
 require('forms.php');
 require('form_ajax_submit.php');
 require('form_upload_progress.php');
 
 $form=new form_class;
 $form->NAME='upload_form';
 $form->METHOD='POST';
 $form->ACTION='';
 $form->ENCTYPE='multipart/form-data';
 $form->debug='error_log';
 $form->ResubmitConfirmMessage=
 'Are you sure you want to submit this form again?';
 $form->AddInput(array(
 'TYPE'=>'file',
 'NAME'=>'userfile',
 'ValidateAsNotEmpty'=>1,
 'ValidationErrorMessage'=>
 'It was not specified a valid file to upload'
 ));
 $form->AddInput(array(
 'TYPE'=>'submit',
 'VALUE'=>'Upload',
 'NAME'=>'doit'
 ));
 $form->AddInput(array(
 'TYPE'=>'hidden',
 'NAME'=>'MAX_FILE_SIZE',
 'VALUE'=>1000000
 ));
 $form->AddInput(array(
 'TYPE'=>'custom',
 'NAME'=>'upload_progress',
 'ID'=>'upload_progress',
 'FeedbackElement'=>'feedback',
 'FeedbackFormat'=>
 '<center>
 <table style="width: 200px" class="progress_container" border="1">
 <tr><td style="width: {ACCURATE_PROGRESS}%;" class="progress_bar">
 <tt>{PROGRESS}%</tt></td><td style="border-style: none;"></td>
 </tr></table><br />
 <tt>Uploaded {UPLOADED}B of {TOTAL}B<br />
 Remaining time: {REMAINING}<br />
 Average speed: {AVERAGE_SPEED}B/s<br />
 Current speed: {CURRENT_SPEED}B/s</tt></center>',
 'CustomClass'=>'form_upload_progress_class'
 ));
 
 /*
 *  Handle client side events on the server side.
 *  Do not output anything before these lines.
 */
 $form->HandleEvent($processed);
 if($processed)
 exit;
 
 $form->LoadInputValues($form->WasSubmitted('doit'));
 $verify=array();
 if($form->WasSubmitted('doit'))
 {
 sleep(1);
 if(($error_message=$form->Validate($verify))=='')
 $doit=1;
 else
 {
 $doit=0;
 $error_message=HtmlEntities($error_message);
 }
 }
 else
 {
 $error_message='';
 $doit=0;
 }
 if(!$doit)
 {
 if(strlen($error_message))
 {
 Reset($verify);
 $focus=Key($verify);
 }
 else
 $focus='userfile';
 $form->ConnectFormToInput($focus, 'ONLOAD', 'Focus', array());
 }
 $onload=HtmlSpecialChars($form->PageLoad());
 
 ?><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 <html>
 <head>
 <title>Test for Manuel Lemos' PHP form class
 to show upload file progress</title>
 <style type="text/css"><!--
 .progress_container { background-color: #c0c0c0; border-radius: 8px;
 -moz-border-radius: 8px; padding: 4px; }
 .progress_bar { border-style: none; color: #000000; padding: 4px;
 background-color: #0000ff; background-image: url(progress.gif);
 text-align: center; }
 // --></style>
 </head>
 <body onload="<?php echo $onload; ?>" bgcolor="#cccccc">
 <center><h1>Test for Manuel Lemos' PHP form class
 to show upload file progress</h1></center>
 <hr />
 <img src="progress.gif" width="0" height="0" alt="Progress" />
 <?php
 
 if($doit)
 {
 $form->GetFileValues('userfile',$userfile_values);
 ?>
 <h2><center>The file was uploaded.</center></h2>
 <center><table>
 
 <tr>
 <th align="right">Uploaded file path:</th>
 <td><tt><?php echo $userfile_values['tmp_name']; ?></tt></td>
 </tr>
 
 <tr>
 <th align="right">Client file name:</th>
 <td><tt><?php echo HtmlEntities($userfile_values['name']); ?></tt></td>
 </tr>
 
 <tr>
 <th align="right">File type:</th>
 <td><tt><?php echo $userfile_values['type']; ?></tt></td>
 </tr>
 
 <tr>
 <th align="right">File size:</th>
 <td><tt><?php echo $userfile_values['size']; ?></tt></td>
 </tr>
 
 </table></center>
 <?php
 }
 else
 {
 $form->AddInputPart('upload_progress');
 $form->AddInputPart('MAX_FILE_SIZE');
 $form->StartLayoutCapture();
 $title='Form upload progress test - 1MB maximum size';
 $body_template='form_upload_body.html.php';
 include('templates/form_frame.html.php');
 $form->EndLayoutCapture();
 $form->DisplayOutput();
 }
 ?>
 <hr />
 </body>
 </html>
 
 |