Массовая заливка по фтп

Статус
В этой теме нельзя размещать новые ответы.
А в чем в общем-то проблема? Скрипт на пхп для массовой заливки пишется за час.
Вот к примеру:

PHP:
function creat_door($dir_door,$host,$door,$pass,$folder) //Функция копирования
{
$connect = ftp_connect($host);
  if(!$connect)
  {
    echo("Не соеденились!");
    exit;
  }
  else
  {
	  $user = $door;
	  $password = $pass;
	  $result = ftp_login($connect, $user, $password);
		$dir = opendir ("$dir_door");
		if($result)
		{
			while ($file = readdir ($dir)) 
			  {
				if(($file != "..") AND ($file != ".") AND ($file != ""))
				{
					if(strpos($file,".")>0)
					{
						$files = trim($file);
						ftp_put($connect, "$folder"."$files", "$dir_door/$files", FTP_BINARY);
					}
					else
					{
						  ftp_mkdir($connect, "$folder"."$file");
						  creat_door("$dir_door/$file",$host,$door,$pass,"$folder"."$file/");
					}
				}
			  }
		}
	
		else
		{
			echo "Пользователь не опознан!";
		}
		closedir ($dir);	
	}

ftp_quit($connect);
}
function get_pass($acc,$razd)
{
	$f=file($acc);
	$count = count($f);
	for($i=0;$i<$count;$i++)
	{
		$st = strpos($f[$i],$razd)+1;
		$pass[] = substr($f[$i],$st);
	}
return $pass;
}

function get_name($acc,$razd)
{
	$f=file($acc);
	$count = count($f);
	for($i=0;$i<$count;$i++)
	{
		$st = strpos($f[$i],$razd);
		$name[] = substr($f[$i],0,$st);
	}
return $name;
}
function copy_tohost($file_of_doors,$dir_for_doors,$host,$numbers)
{
	$names = get_name($file_of_doors,":");
	$pass = get_pass($file_of_doors,":");
	$count = count($names);

	if($count > $numbers)
	{ 
		$s = round($count/$numbers);
		$fo = fopen("count.txt","w");
		for($i=$numbers;$i<=$count+$numbers;$i+=$numbers)
		{
			fputs($fo,$i."\n");
		}
		fclose($fo);
	}

	$f = file("count.txt");

	$num = @file_get_contents("number.txt");

	if($num == "") $num=0;

	$num = trim($num);

	if($num ==0) 
		$old=0;
	else{
		$mp = $f[$num-1];
		$old=trim($mp);
	}

	$new = trim($f[$num]);

	if($new > $count) $new=$count;
	
	$fu = fopen("number.txt","w");

	if($new < $count){
		$num++;
		fputs($fu,$num);
	}
	else{
		$num=0;
		fputs($fu,$num);
	}
	for($i=$old;$i <$new;$i++ ){
		creat_door("$dir_for_doors/$names[$i]",$host,trim($names[$i]),trim($pass[$i]),"");
		print "$i. $names[$i] - Ok <br>";
	}

	fclose($fu);
}

copy_tohost($facc,$doors_folder,$ftp_host,$number);
//$facc - файл с акками в формате name:pass
//$doors_folder - папка с готовыми дорами в папках, папки должны называться как и имя акка
//$ftp_host - ftp хост фриха, 
//$number - колличество заливаемых доров за раз

Вот я им пользуюсь, не многопоточный конечна и без проксей, но если объемы не большие то сойдет
 
Я в php например не шарю вообще, не понимаю в какой папке лежат доры и где логины к хостингам
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху