2009-08-24 3 views
1

Я пытаюсь создать приложение, в котором администратор сможет видеть файлы из определенной папки (предопределенные) и должен иметь возможность загружать их по одному. Файлы будут храниться на сервере. Может ли кто-нибудь помочь мне, как это сделать?скачать файл с ftp с помощью php

ответ

-1

Проверьте функцию file_get_contents. Он делает то, что вам нужно.

Например:

<?php $file_content = file_get_contents ('ftp://mysite.com/file.txt'); ?> 

Тогда вам просто нужно записать содержимое в файловой системе с file_put_contents или fwrite (как вы предпочитаете).

+0

Не работает, так как невозможно получить список файлов из каталога с помощью file_get_contents. –

+0

Да, я думаю, что get_file_contents не будет работать. Я хочу отобразить список файлов и хочу, чтобы они были загружены администратором. – 2009-08-25 05:32:54

1

Вы пытаетесь получить список файлов на удаленном FTP-сервере? Если это так, то вам нужно либо ftp extension, либо использовать расширение Net-FTP2 от PEAR (он был, к сожалению, оставлен, но вы можете спасти какой-то код оттуда)

Что касается обслуживания определенного файла, который поступает из FTP-сервер для удаленного пользователя, я хотел бы предложить readfile function

readfile('ftp://server/file.txt'); 

Имейте в виду, что вам также необходимо добавить соответствующие заголовки, как Content-Type, Content-Length, и т.д., страница ReadFile руководство имеет некоторые Примеры.

+0

Я хотел бы объяснить свою ситуацию. На сервере есть папка say XXXX. Папка XXXX обновляется (файлы добавляются автоматически) после того, как пользователь заполнит набор вопросов. Теперь я хочу создать приложение, в котором администратор сможет видеть имена файлов, и они смогут загрузить их одним из них одним нажатием кнопки. Можете ли вы направить меня и предоставить мне пример кода, что будет здорово. – 2009-08-25 05:28:39

+0

папка находится на сервере. – 2009-08-25 05:29:35

+0

Итак, начните внедрять его и спросите, есть ли у вас проблемы. Вы уверены, что здесь есть FTP? –

0

Я знаю, что это старый вопрос, но я искал аналогичное решение, и я думаю, что здесь будет полезно ответить, что он работает. Надеюсь, это поможет кому-то!

<?php 

//ftp-server 
$connection_id = ftp_connect("here put the link of FTP server"); 
$ftp_username = "here the username"; 
$ftp_password = "here the password"; 

$file_path_my_pc = "here the path that you want to save your file.."; 
$file_path_ftp_server = "here the path of the file in FTP server/the name of file.csv"; 




$login = ftp_login($connection_id, $ftp_username, $ftp_password); 

if (!$login) { 
    echo "Connection to ftp server has failed!! "; 
    exit; 
} else { 
    echo "Connected has be done!!"; 
} 

ftp_pasv($connection_id, true); 

if (ftp_get($connection_id, $file_path_my_pc.'/here the name of your file in the FTP server', $file_path_ftp_server, FTP_ASCII)) { 

    echo "File has been downloaded!!"; 
    ftp_close($connection_id); 
    return true; 

} else { 
    ftp_close($connection_id); 
    echo "fail ... "; 
    echo "Connected has be stopped!!"; 
    return false; 

} 
Смежные вопросы