Автор Тема: PHP и скачивание файлов с FTP  (Прочитано 19033 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Дмитрий Попов

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 264
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.programmist.spb.ru
PHP и скачивание файлов с FTP
« Ответ #15 : 14 Августа 2002, 00:31:53 »

<?php
// set up basic connection
$conn_id ftp_connect($ftp_server); 

// login with username and password
$login_result ftp_login($conn_id$ftp_user_name$ftp_user_pass); 

// check connection
if ((!$conn_id) || (!$login_result)) { 
        echo 
"FTP connection has failed!";
        echo 
"Attempted to connect to $ftp_server for user $ftp_user_name"
        die; 
    } else {
        echo 
"Connected to $ftp_server, for user $ftp_user_name";
    }

// upload the file
$upload ftp_put($conn_id$destination_file$source_fileFTP_BINARY); 

// check upload status
if (!$upload) { 
        echo 
"FTP upload has failed!";
    } else {
        echo 
"Uploaded $source_file to $ftp_server as $destination_file";
    }

// close the FTP stream 
ftp_close($conn_id); 
?>


Чем этот скрипт (вернее пример из мануала) не устраивает?
 За Родину! За Россию!
SendMail для любого хостинга.

Оффлайн ThE0ReTiC

  • Главный по тарелочкам
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4041
  • +2/-0
  • 2
    • Просмотр профиля
    • http://
PHP и скачивание файлов с FTP
« Ответ #16 : 14 Августа 2002, 00:55:07 »
Дмитрий Попов
Это закачка на сервер, дарагой.
Для отдачи файлов пользвателям этот скрипт надо обработать напильником.
:):):)
Helios
В скрипте пиши и не мучайся. СОчинить не сложно - мануал посмотри.
Могу дать класс для работы с FTP (правда он немного не дописан, он нужные тебе функции там есть)
AS IS...

Оффлайн Дмитрий Попов

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 264
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.programmist.spb.ru
PHP и скачивание файлов с FTP
« Ответ #17 : 14 Августа 2002, 01:03:32 »
ThE0ReTiC
Ууупс... Саавсем паверхнастна пасматрел, да?. :-))
Хорошо, мы тут эту строчку заменим:

$upload 
ftp_put($conn_id$destination_file$source_fileFTP_BINARY); 

На эту:


$upload 
ftp_get $conn_id$local_file$remote_fileFTP_BINARY);


Helios:
Это действительно просто. Скрипт перед Вами... осталось чуть-чуть передел
 За Родину! За Россию!
SendMail для любого хостинга.

Оффлайн ThE0ReTiC

  • Главный по тарелочкам
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4041
  • +2/-0
  • 2
    • Просмотр профиля
    • http://
PHP и скачивание файлов с FTP
« Ответ #18 : 14 Августа 2002, 01:57:41 »
Дмитрий Попов
[OFF]Если бы я поверхностно посмотрел - то ничего бы не написал.
Я ж сказал - обработать напильником, что ты и сделал[/OFF]
AS IS...

Оффлайн Helios

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 26
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.moderntalking.org
PHP и скачивание файлов с FTP
« Ответ #19 : 14 Августа 2002, 13:36:28 »
ThE0ReTiC
Дай, плиз, клас для работы с FTP. А вось разберусь?

Дмитрий Попов
Я видел этот пример в мануале, однако $local_file надо в каком виде указывать (просто название.расширение или полный путь куда должно записываться, типа c:/название.расширение), и переменную $remote_file надо как указывать (полный путь к файлу, допустим /pub/files/название.расширение)? И еще вопрос: что из себя представляет процесс скачивания таким образом файла (Просто будет втихаря полчаса работать браузер, пока будет скачиваться файл, или эту файл "подхватит" и начнет скачивать GetRight (ReGet и т.д.))?

Оффлайн Доктор

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 487
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
PHP и скачивание файлов с FTP
« Ответ #20 : 14 Августа 2002, 14:33:59 »
Ненавижу вопросы, которые задаются даже без малейшей попытки подумать перед этим своей головой.

Оффлайн Доктор

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 487
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
PHP и скачивание файлов с FTP
« Ответ #21 : 14 Августа 2002, 14:35:05 »
ThE0ReTiC
А чем хороштвой класс?

Оффлайн ThE0ReTiC

  • Главный по тарелочкам
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4041
  • +2/-0
  • 2
    • Просмотр профиля
    • http://
PHP и скачивание файлов с FTP
« Ответ #22 : 14 Августа 2002, 14:37:52 »
Доктор
Да ничем. я его просто так сделал - ради тренировки
AS IS...

Оффлайн Helios

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 26
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.moderntalking.org
PHP и скачивание файлов с FTP
« Ответ #23 : 14 Августа 2002, 14:39:10 »
Доктор
Я просто абсолютно не знаю, как работает FTP с PHP (даже в Мануале я не нашел подробного описания), и с принципом работы FTP я знаком только на уровне "выгрузки файлов на сервер".

Оффлайн Дмитрий Попов

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 264
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.programmist.spb.ru
PHP и скачивание файлов с FTP
« Ответ #24 : 14 Августа 2002, 19:09:22 »
ThE0ReTiC
Я имел ввиду, что я посмотрел поверхностно (Вы меня не так поняли:-D)

Helios
Причем тут C:// ?

Вы на сервер сохраняете файл, а потом просто отдаете его в браузер fread\'ом.

Чего-то мне кажется Вы вообще PHP почти не изучали...
 За Родину! За Россию!
SendMail для любого хостинга.

Оффлайн Helios

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 26
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.moderntalking.org
PHP и скачивание файлов с FTP
« Ответ #25 : 14 Августа 2002, 21:54:46 »
Дмитрий Попов
PHP я изучал (правильнее сказать "изучаю").
А вот Файловые операции в PHP действительно почти не изучал, да и опыта практического мало...

А Вы не могли по подробнее написать, что должен fread в данном случае делать?

Оффлайн ThE0ReTiC

  • Главный по тарелочкам
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4041
  • +2/-0
  • 2
    • Просмотр профиля
    • http://
PHP и скачивание файлов с FTP
« Ответ #26 : 14 Августа 2002, 22:40:37 »
Helios
Цитировать
fread

Вообще-то считывает определенное количество байт из файла.
Немного не понимаю, каким боком он здесь затесялся, особенно если учесть, что считанная информация передается в переменную.
Если надо напрямую в броузер, то не проще ли воспользоваться readfile ?
AS IS...

Оффлайн Helios

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 26
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.moderntalking.org
PHP и скачивание файлов с FTP
« Ответ #27 : 15 Августа 2002, 00:43:33 »
ПОЖАЛУЙСТА ПОМОГИТЕ!
Скажите же, что надо после $upload = ftp_get ( $conn_id, $local_file, $remote_file, FTP_BINARY); делать?

Оффлайн ThE0ReTiC

  • Главный по тарелочкам
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4041
  • +2/-0
  • 2
    • Просмотр профиля
    • http://
PHP и скачивание файлов с FTP
« Ответ #28 : 15 Августа 2002, 01:03:02 »
Helios

Header
("Content-Type: ...");
readfile($local_file);

Типа того.
COntent-Type пропишешь в зависимости от типа отдаваемого файла (архив, кино, картинка, etc...)
AS IS...

Оффлайн Доктор

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 487
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
PHP и скачивание файлов с FTP
« Ответ #29 : 15 Августа 2002, 03:12:08 »
А если реально подумать, то какая же чепуха это все. Сколько этот файл, если он хоть немного  приличных размеров, будет качаться по ftp сначала... ни один юзер не выдержит...

 

Sitemap 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