Advertisement
Guest User

Untitled

a guest
Jan 27th, 2018
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 2.08 KB | None | 0 0
  1. <?
  2. include('config.php');
  3.  
  4. $time = 60;
  5. set_time_limit(60);
  6.  
  7. $busy_file = 'archive/busy.txt';
  8. if(file_exists($busy_file)) {
  9.     if(file_get_contents($busy_file) > time() - 60) {
  10.         die('Busy');
  11.     }
  12. }
  13.  
  14. file_put_contents($busy_file, time());
  15.  
  16. $keys = array_keys($servers);
  17. foreach($keys as $key) {
  18.     $ftp_host = $servers[$key]['ftp_host'];
  19.     $ftp_port = $servers[$key]['ftp_port'];
  20.     $ftp_user = $servers[$key]['ftp_user'];
  21.     $ftp_pass = $servers[$key]['ftp_pass'];
  22.     $ftp_dir = $servers[$key]['ftp_dir'];
  23.     $ftp_passive = $servers[$key]['ftp_passive'];
  24.  
  25.     echo '• '.$key.' ('.$servers[$key]['title'].'): ';
  26.    
  27.     $ftp = ftp_connect($ftp_host, $ftp_port, 10);
  28.     if(!ftp_login($ftp, $ftp_user, $ftp_pass)) echo 'Cannot authorize on FTP';
  29.         else {
  30.         ftp_pasv($ftp, (bool)$ftp_passive);
  31.         ftp_chdir($ftp, $ftp_dir);
  32.         $files = ftp_nlist($ftp, '');//'197.80.200.6_2312/Wasteland');//$ftp_dir
  33.         //var_dump($files); echo $ftp;
  34.         //echo gettype($files);
  35.         //echo nl2br(print_r($files, true));
  36.         $rpts = array();
  37.         if(is_array($files)) foreach($files as $v) {
  38.             if(substr($v, -4) == '.rpt') {
  39.                 $rpts[] = $v;
  40.             }
  41.         }
  42.         natsort($rpts);
  43.         $rpts = array_reverse($rpts);
  44.         $rpt_name = current($rpts);
  45.  
  46.         if(!$rpt_name) echo 'No RPTs found';
  47.         else {
  48.             $has_dir = true;
  49.             if(!is_dir('archive/'.$key)) {
  50.                 $has_dir = false;
  51.                 if(@mkdir('archive/'.$key, 0777)) $has_dir = true;
  52.                 else echo 'Failed to create dir: archive/'.$key;
  53.             }
  54.  
  55.             if(strpos($rpt_name, '/') !== false) {
  56.                 $arr = explode('/', $rpt_name);
  57.                 $rpt_name = end($arr);
  58.             }
  59.  
  60.             $get_file = $rpt_name;//$ftp_dir.'/'.$rpt_name;
  61.             $put_file = 'archive/'.$key.'/'.$rpt_name;
  62.             $gsize = ftp_size($ftp, $get_file);
  63.             if(file_exists($put_file)) $psize = filesize($put_file);
  64.             else {
  65.                 file_put_contents($put_file, '');
  66.                 $psize = 0;
  67.             }
  68.             ftp_get($ftp, $put_file, $get_file, FTP_ASCII, $psize);
  69.        
  70.             echo 'Downloading '.($gsize - $psize).' bytes ('.$rpt_name.')';
  71.  
  72.             file_put_contents('archive/'.$key.'.txt', time());
  73.         }
  74.     }
  75.    
  76.     ftp_close($ftp);
  77.  
  78.     echo '<hr/>';
  79. }
  80.  
  81. unlink($busy_file);
  82.  
  83. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement