PDA

Просмотр полной версии : Заливка файлов по фтп


edos
01.03.2010, 14:18
Ищу простенький скрипт на пхп для заливки нескольких файлов на сервер по списку фтп.

edos
02.03.2010, 19:08
если кто возьмется написать возможно небольшое вознаграждение в вм

LStr1ke
02.03.2010, 19:12
http://ru2.php.net/manual/en/function.ftp-fput.php
Кури

edos
02.03.2010, 19:35
спасибо, не вкурил, я не кодер

есть список вида:

cwslegt:r4K9Bx@194.134.17.24
cennik_ap:W3R5jk7FcE@79.139.30.249
a8735752:o3IeX4@64.235.57.62
bongda:bongda@203.162.70.67
depsuser:depsuser1@210.105.59.214
a7997679:r5I0JE@216.108.235.39
designerwardrobes.co.uk:JdFDzFcbn@79.170.40.122
dyrogblomster2:apumQD@194.63.250.14
bonnechance88:bond88@194.63.250.14
drumeles:7kp4m2@206.167.188.105

по нему надо залить пару файлов.

Pashkela
03.03.2010, 00:50
10$ php, 20$ - perl, 50$ - perl multithread

Fepsis
03.03.2010, 03:25
Вот попробуй... Работать должен (по крайней мере раньше работал)

<?php

//**************** By Fepsis **************//

set_time_limit(0);
error_reporting(0);

$f_ftp = 'ftp.txt'; // ftp.txt - файл с ФТП акками вида: user:pass@host по одному в строке... лежать должен в папке со скриптом...
$dir = 'files'; // files - папка, в которой лежат файлы, которые необходимо грузить на ФТП... лежать должна в папке со скриптом...

$ftp = file($f_ftp);
$files = scandir($dir);

function put_file ($data_ftp, $dir, $file)
{

echo $data_ftp.' : '.$file;

$data_ftp = 'ftp://'.$data_ftp;
$data = parse_url($data_ftp);
$connect = ftp_connect($data[host]);
if($connect)
{
$res = ftp_login($connect, $data[user], $data[pass]);
if($res)
{

ftp_pasv($connect, true);
$put = ftp_put($connect, $file, $dir.'/'.$file, FTP_ASCII);
if($put) {echo ': <span style="color:#009900; font-weight:bold">Load</span><br>';}
else echo ': <span style="color:#FF0000; font-weight:bold">No put</span><br>';
}
else echo ': <span style="color:#FF0000; font-weight:bold">No login</span><br>';

ftp_close($connect);

}
else echo ': <span style="color:#FF0000; font-weight:bold">No connect</span><br>';


}



foreach ($ftp as $data_ftp)
{
for ($i = 2; $i < count($files); $i++)
{
put_file(trim($data_ftp), $dir, $files[$i]);
}
echo '<br>';
}

?>

В папку со скриптом кидаем файл ftp.txt, в нём акки фтп... Там же создаём папку "files" всё содержимое этой папки заливается в корень ФТП... В конце работы скрипта получишь отчёт...

matulis
20.03.2010, 18:29
а можно ли, чтобы не в корень заливало, а в папку скажем, что есть на серваке, то есть если есть какая-то папка, то переходим туда и заливаем. Имя папки в принципе меняется, поэтому привязки не должно быть. То есть главное чтобы она там была. А то файлы льются рядом