Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > к ftp через web


Автор: KrotOnline 15.12.2007, 23:05
Доброго времени суток!!!
Пишу клиента для ftp-сервера.
Сталкнулся с такой проблемой, при переходе от отдного файла php к другому, пропадает подключение к серверу. Среда не сохраняет состояние подключения. Т.е. для каждого перехода мне требуется регится заного на сервере.

Как можно сохранить подключение к серверу???

Автор: Feldmarschall 15.12.2007, 23:21
Никак.
Да и зачем? Какая проблема снова подключиться?

Автор: KrotOnline 15.12.2007, 23:25
Да проблемы нет!!! Только время подключения, и проверка пароля происходит долго, не хотелось бы задерживать юзера 

Автор: Djinn 15.12.2007, 23:54
НУ еси хранить в куках к примеру то пользователю бут пофигу, ведь ты буш всё делать со стороны сервера... а это помоему довольно таки шустро =)

Автор: Feldmarschall 16.12.2007, 00:00
Djinn, что ты собрался хранить в куках?

Автор: Djinn 16.12.2007, 00:33
мож я чёт не понял что ему надо... тогда сор...

Автор: sandland 16.12.2007, 01:15
да, подключаться нужно каждый раз при обновлении страницы....я основные параметры в сессии хранил, когда писал свой ftp-клиент, но так и не доделал, так и не знал как правильно реализцется ф-ция редактирования файла...

у каждого файла свои правда доступа, и как правильно отрывать файл, а потмо сохранять...в общем раз тема про фтп-килент, может кто-нибудь опишет как это делается правильно? буду очень признателен...

Автор: KrotOnline 16.12.2007, 01:47
а если 1000 страниц, и для каждой писать подключения. А я хотел отдельной функцией сделать smile  теперь придется везде добавлять!!!

Есть такая функция как перевод сервера в пасивный/активный режим!!! Ешо не юзал!!! Может оно?

Автор: Feldmarschall 16.12.2007, 02:10
нет.
откуда у тебя 1000 страниц возьмется? ты на пхп пишешь или на бейсике?
сделай отдельной функцией - какие проблемы-то?

Автор: KrotOnline 16.12.2007, 02:21
Цитата(Feldmarschall @ 16.12.2007,  02:10)
нет.
откуда у тебя 1000 страниц возьмется? ты на пхп пишешь или на бейсике?
сделай отдельной функцией - какие проблемы-то?

C 1000 страницами, ето я погорячился!!!
Я делаю так!!!

Файл подключения+инициализация юзера -->(кукисы)--> Файл сканирование директорий+разные примочки

Может все в один файл засунуть, и по функциям расписать!!! Или не мучатся, считать содержимое сервера в базу данных и с ней работать!!!
У меня ступор, не знаю как сделать smile вроде просто, а с друой стороны полный ......
Направте меня в нужное русло!!! Пожалуйста



Автор: Feldmarschall 16.12.2007, 02:23
можно в один, можно в разных.
общие функции запиши в один файл и include его в оба скрипта.

Можешь считывать в базу данных.

Автор: KrotOnline 16.12.2007, 15:35
Код

function dirnow($connect)
{
global $link;

$file_list = ftp_rawlist($connect,"");
foreach ($file_list as $current) { 
    $split = preg_split("[ ]", $current, 9, PREG_SPLIT_NO_EMPTY); 
    if ($split[0] != "total") { 
        $parsed[]['isdir']          = $split[0]{0} === "d"; //Если true значит дериктория 
        $parsed[]['perms']          = $split[0]; 
        $parsed[]['number']         = $split[1]; 
        $parsed[]['owner']          = $split[2]; 
        $parsed[]['group']          = $split[3]; 
        $parsed[]['size']           = $split[4];
        $parsed[]['month']          = $split[5]; 
        $parsed[]['day']            = $split[6]; 
        $parsed[]['time/year']      = $split[7]; 
        $parsed[]['name']           = $split[8]; 
}
$name = $split[8];image($name);
$nowdir=$name;
?>

Вот кусок кода, который сканит содержимое в указанном каталоге, который бы желательно вставить в другой файл и обращатся к ниму 
при необходимости. 
Цитата

общие функции запиши в один файл и include его в оба скрипта.

не пойму как сделать

Автор: Feldmarschall 16.12.2007, 15:50
а зачем? С фтп у тебя ведь работает только один файл?
но если надо - include()

Автор: KrotOnline 16.12.2007, 16:49
Решил пока оставить подключение во всех страницах
Передаю переменную через адресную строку другому файлу, такая проблема, переменная передаётся другому файлу, но функция 
Код

$file_list = ftp_rawlist($connect, $переменная);
foreach ($file_list as $current) { 

отказывается воспринимать, пишит Warning: Invalid argument supplied for foreach()
Присваиваю, в этом же файле, работает!!! Чудеса?

Автор: Feldmarschall 16.12.2007, 17:10
ты бы хоть посмотрел, что передаешь через адресную строку. глазами.

Автор: KrotOnline 16.12.2007, 17:22
Строка:

scandir.php?nowdir="/ABONENT"

Код

$file_list = ftp_rawlist($connect, $nowdir);
foreach ($file_list as $current) { 



Шъёрт побъери, 
вот правильно
scandir.php?nowdir=/ABONENT 

Автор: Feldmarschall 16.12.2007, 17:51
и что? теперь работает?

Автор: KrotOnline 16.12.2007, 22:41
Как часы  smile 
Только гатство, ета переменная считывается только до первого пробела, остальное выкидывает

Автор: Feldmarschall 16.12.2007, 22:44
urlencode()

Автор: KrotOnline 16.12.2007, 23:54
Спасибо!!! Все хорошо

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)