ewg777
Мой дом здесь!
- Регистрация
- 6 Авг 2007
- Сообщения
- 764
- Реакции
- 334
- Автор темы
- #1
Необходим мощный многопоточный FTP-UPLOADER на PHP.
Пример простейшей фукции upload
Заранее спасибо.
Пример простейшей фукции upload
PHP:
function do_upload($dir = 'upload')
{
global $conn_id, $ftp_root, $transfer_mode, $local_dir;
$ftp_dir = preg_replace('/^'.$local_dir.'\/?/', '', $dir);
if ($ftp_dir != '')
echo 'Папка '. $ftp_dir . ((ftp_mkdir($conn_id, $ftp_root . $ftp_dir)) ? ' создана' : ' не создана').'<br />';
$filelist = glob(($dir!='') ? $dir.'/*' : '*');
if ($filelist == array())
return 0;
foreach ($filelist as $file)
{
if (is_file($file))
{
$transfer_mode = (preg_match('/\.(gif|jpg|png)$/', $file)) ? FTP_BINARY : FTP_ASCII;
echo 'Файл ' . $file . ((ftp_put($conn_id, $ftp_root . preg_replace('/^'.$local_dir.'\//', '', $file), $file, $transfer_mode)) ? ' загружен' : ' не загружен').'<br />';
}
else
do_upload($file);
}
return 0;
}
$conn_id = ftp_connect($ftp_server);
$login_result = ftp_login($conn_id, $ftp_login, $ftp_password);
if (!$conn_id || !$login_result)
exit("Не удалось установить соединение с FTP сервером!\n Попытка подключения к серверу $ftp_server!");
else
echo "Установлено соединение с FTP сервером $ftp_server<br>";
do_upload($local_dir);
ftp_close($conn_id);
Заранее спасибо.