home *** CD-ROM | disk | FTP | other *** search
/ Enter 2004 June / ENTER.ISO / files / xampp-win32-1.4.5-installer.exe / xampp / uploader_default2.php < prev    next >
Encoding:
PHP Script  |  2004-03-24  |  3.3 KB  |  125 lines

  1. <?php
  2. /**
  3.  * Another simple Default Upload ProgressBar example.
  4.  *
  5.  * @version    $Id: uploader_default2.php,v 1.1 2004/02/14 22:07:25 farell Exp $
  6.  * @author     Laurent Laville <pear@laurent-laville.org>
  7.  * @package    HTML_Progress
  8.  */
  9.  
  10. require_once 'HTML/Progress/uploader.php';
  11.  
  12. require_once 'progressModels.php';
  13.  
  14. // Account FTP on remote server
  15. $ftp = array(
  16.     'user' => 'farell',
  17.     'pass' => 'xxxxxx',
  18.     'host' => 'ftpperso.free.fr'
  19. );
  20.  
  21.  
  22. // A progress uploader dialog box with buttons 80 pixels width
  23. $uploader = new HTML_Progress_Uploader('MyUploader2', array(
  24.     'button' => array('style' => 'width:80px;')
  25.     )
  26. );
  27.  
  28. // Attach a progress ui-model (see file progressModels.php for attributes definition)
  29. $progress = new HTML_Progress();
  30. $progress->setUI('Progress_Default2');
  31. $progress->setAnimSpeed(100);               // (animation: 0 faster, 1000 slower)
  32. $uploader->setProgressElement($progress);
  33.  
  34. // Allow only pictures upload
  35. $uploader->setValidExtensions(array('gif','jpg','jpeg','png'));
  36. ?>
  37. <!DOCTYPE html
  38.     PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  39.     "http://www.w3c.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  40.  
  41. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
  42. <head>
  43. <title>Web-FTP Uploader with ProgressBar - Default renderer </title>
  44. <style type="text/css">
  45. <!--
  46. .progressStatus {
  47.     color:#000000; 
  48.     font-size:10px;
  49. }
  50. <?php echo $uploader->getStyle(); ?>
  51. // -->
  52. </style>
  53. <script type="text/javascript">
  54. <!--
  55. <?php echo $uploader->getScript(); ?>
  56. //-->
  57. </script>
  58. </head>
  59. <body>
  60.  
  61. <?php 
  62. $renderer =& HTML_QuickForm::defaultRenderer();
  63. $renderer->setFormTemplate('
  64.     <table width="450" border="0" cellpadding="3" cellspacing="2" bgcolor="#CCCC99">
  65.     <form{attributes}>{content}
  66.     </form>
  67.     </table>
  68.     ');
  69. $renderer->setHeaderTemplate('
  70.     <tr>
  71.         <td style="white-space:nowrap;background:#996;color:#ffc;" align="left" colspan="2"><b>{header}</b></td>
  72.     </tr>
  73.     ');
  74. $uploader->accept($renderer);
  75.  
  76. // Display progress uploader dialog box
  77. echo $renderer->toHtml();
  78.  
  79.  
  80. if ($uploader->isStarted()) {
  81. // Begin upload
  82.  
  83.     // declare files to upload    
  84.     $uploader->setFiles(array(
  85.         'splintercell.jpg',
  86.         'd:/Mes Documents/Mes images/black hawk down/00010484.jpg',
  87.         'monitor.html'       // NOTE: invalid file extension, won't be uploaded
  88.         )
  89.     );
  90.  
  91.     // connect to ftp server
  92.     $logs = $uploader->logon($ftp['user'], $ftp['pass'], $ftp['host']);
  93.     if (PEAR::isError($logs)) {
  94.         die($logs->getMessage());
  95.     }    
  96.     
  97.     // set timeout as a default ftp connection
  98.     set_time_limit(90);
  99.  
  100.     $ret = $uploader->moveTo('tmp', true);  // replace existing files 
  101.     if (PEAR::isError($ret)) {
  102.         die($ret->getMessage());
  103.     }    
  104.  
  105.     // summary of uploads operation
  106.     if (count($ret) == 0) {
  107.         echo '<i>All files were move on to ' . $ftp['host'] . "</i><br/>\n";
  108.     } else {
  109.         echo '<b>Some files were not move on to ' . $ftp['host'] . "</b><br/>\n";
  110.         print "<pre>";
  111.         var_dump($ret);
  112.         print "</pre>";
  113.     }
  114.  
  115.     // disconnect from ftp server
  116.     $uploader->logoff();
  117. }
  118.  
  119. if ($uploader->isCanceled()) {
  120.     $uploader->logoff();     // disconnect from ftp server before a timeout has occured
  121. }
  122. ?>
  123.  
  124. </body>
  125. </html>