Заработок на сайте: Сапа, Блогун
Окт
27

Серверный заливщик файлов на фрихостинги

Рубрика: Софт | Автор:admin

Получать обновления сайта SeoRP.ru:

Неприглядные снаружи, полезные внутри. Конечно, дурианы!Джонн22 открыл новый курс по инфобизнесу. Это будет бомба. Записывайтесь!

Подробнее о курсе и вообще о Джонне напишу позже. А пока сабж.

Долго мучился с заливкой файлов на большое количество ftp (например, фрихостинги).

И вот написал на PHP серверный заливщик файлов на фрихостинги для этого дела. Однопоточный, без прокси. Зато надёжный.

Этот скрипт ложится туда же, где лежат папки с дорами. Рядом кидается файл domains.txt, в котором на каждой строчке перечисленны аккаунты, и указана папка дора.

Формат записи аккаунта такой же, как выдаёт магазин аккаунтов wmaid.com, только в конце добавлена локальная папка. Самый адекватный, кстати, магазин аккаунтов, рекомендую. Ну, а хостинг сайтов html, использую 000webhost.

То есть формат аккаунта фрихостинга -

http://door.narod.ru/;ftphost;login;password;/public_html/;door1

Здесь /public_html/ - это папка на хостинге, если её нету, то ставьте слеш (/), а door1 - папка с дором на вашем серваке.

Cкрипт, файл domains.txt и папки с дорами должны лежать в одном месте! Удобно в экселе добавлять к купленным аккаунтам список папок с дорами, взятый из TotalCommander.

Прежде чем взять скрипт, откройте эту 404 страницу и насладитесь креативом :)

Скрипт заливщика скачать тут.

Или просто посмотреть:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
<?php
set_time_limit (0);
//error_reporting(E_ALL);
$domains = explode("\n", trim(file_get_contents ('domains.txt'))); // Режем в массив по ВК
$domains = array_diff($domains, $array_dels=array('')); // Удаляем элементы массива с пустым значением
$domains = array_values ($domains); // Восстанавливаем нумерацию - возвращаем значения массива в виде списка
 
$kol = count($domains); // количество доменов
@unlink("log.txt"); // Удаляем старый лог
echo "<h1>Заливщик файлов на фрихи</h1> <em>Список фрих в формате http://door.narod.ru/;ftphost;login;password;/public_html/;door1 ложим в файл domains.txt. <br>Сюда же ложим папки с дорами.</em><br><br>";
for ($n=0;$n<$kol;$n++) {
	$err = "";	
	$stroka = explode(";", trim($domains[$n])); // режем в массив 
	$filelist = glob($stroka[5]."/*.*"); // Сохраняем в список названия файлов в каталоге
 
 
				// устанавливаем ftp-соединение
				$conn_id = @ftp_connect($stroka[1]); 
				// логинимся
				$login_result = @ftp_login($conn_id, $stroka[2], $stroka[3]); 
 
				// Проверяем соединение
				if ((!$conn_id) || (!$login_result)) { // Если не соединились
					echo "<font color=FF0000>Не удалось соединиться с - ".$stroka[1]." юзер - ".$stroka[2]."</font>\n<br>";
					file_put_contents("log.txt", "Не удалось соединиться с - ".$stroka[1]." юзер - ".$stroka[2]."\n", FILE_APPEND | LOCK_EX); // Пишем ошибку в лог
					$err = " с ошибками!!!";
					//переход к следующему акку
					continue;
				} else { // Если соединились
					echo "Соединились - <b>".$stroka[0]."</b>\n<br>";
 
					// Переходим в нужные папки
					ftp_chdir($conn_id, trim($stroka[4], "/"));
					chdir(trim($stroka[5], "/"));
 
						// Копируем файлы по одному
						for ($f=0;$f<count($filelist);$f++) {
 
						$file = basename($filelist[$f]); // название очередного заливаемого файла
 
						// Заливаем файл
						$upload = @ftp_put($conn_id, $file, $file, FTP_BINARY);
 
						// Проверяем, загрузилось ли
						if (!$upload) { 
						echo "<font color=FF0000>Ошибка загрузки  - ".$filelist[$f]."</font>\n<br>";
						file_put_contents("../log.txt", "Ошибка загрузки  - ".$filelist[$f]."\n", FILE_APPEND | LOCK_EX); // Пишем ошибку в лог
						$err = "<font color=FF0000> с ошибками!!!</font>";
						}
 
						} // конец копирования файла
 
 
				} // конец проверки соединения
 
				// Закрываем ftp-соединение 
				ftp_close($conn_id); 
 
	chdir(".."); // вернулись в родительский каталог
 
 
echo "Скопировали <a target=_blank href=".$stroka[0].">".$stroka[0]."</a>".$err."<br><br>";
flush(); 					
		} // Следующее ftp-соединение
 
echo "<h1>Готово! <a target=_blank href=log.txt>Лог ошибок</a></h1>";


Получать обновления сайта SeoRP.ru: