Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Пример работы с... 65535
Содержание сайт... 65535
ТЕХНОЛОГИИ ДОСТ... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Создание отчето... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Модуль Forms 65535
Имитационное мо... 61265
Реклама
Сейчас на сайте
Гостей: 9
На сайте нет зарегистрированных пользователей

Пользователей: 13,124
новичок: alejka
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

База данных - рабочее место кассира на Delphi + бд Access
Моделирование процесса поступления заявок в систему, состоящую из трёх Э...
Моделирование круглосуточного интернет кафе на GPSS + Отчет

Реклама



Подписывайся на YouTube канал о программировании, что бы не пропустить новые видео!

ПОДПИСЫВАЙСЯ на канал о программировании
Работаем с FTP на уровне PHP
Автор: Лисовский Сергей(crawtz)
slissovski@hot.ee

Я почти на 100% уверен , что вы уже работали с FTP. Сейчас я поведаю, как работать с ним на уровне языка PHP. Итак , для начала вам необходимо вспомнить, как работать в PHP с обычными файлами: сначала надо открыть файл, выполнить с ним какие-либо действия и, наконец, закрыть его. Причем при записи и чтении файла вы не обойдетесь без помощи функции "fopen" (если только вы не используете функцию "file").

Итак, теперь, собственно, про сам FTP.

Работа с FTP начинается с открытия "потока" (stream) и делается это функцией "ftp_connect()" (аналогично функции fopen в работе с файлами).
ftp_connect("имя хоста","порт","timeout");

Вместо "имя хоста" пропишите имя сайта, к которому вы хотите подключиться. В параметре "порт" укажите ftp-порт удаленного сервера (обычно "21"), а в "timeout" - на какое время (в секундах) вы хотите открыть соединение. Результат выполнения функции нужно присвоить какой-либо переменной, в нашем примере это переменная $open.

Пример:
$open = ftp_connect("ftp.server.com", 21, 30);

Для входа по вашему аккаунту на сервере воспользуйтесь функцией "ftp_login()".

Пример:
ftp_login($open, "your_username", "your_password");

А лучше это сделать следующим образом:
if (!ftp_login($open, "your_username", "your_password")) exit("Не могу соединиться");

Параметр "your_username" должен содержать ваш username для входа, а "your_password" - соответственно, ваш пароль. Переменная $open является идентификатором соединения с ftp узлом, к которому вы подключились с помошью "ftp_connect".

Все. Если вышеуказанный код не выдал вам никаких ошибок, значит вы успешно подключились к ftp узлу.

А теперь поговорим о функциях работы с FTP:

Функция ftp_mkdir() создаёт директорию, пример:
ftp_mkdir($open,"test"); //Создали папку "test".

Функция ftp_rmdir удалит папку:
ftp_rmdir($open,"test"); //Удалили ранее созданную нами папку папку "test".

Переименовать файл можно функцией "ftp_rename()":
ftp_rename($open,"test.txt","ok_test.txt");

Мы переименовали "test.txt" в "ok_test.txt" , вместо "test.txt" может быть любой другой файл.

Просмотреть содержимое вашего каталога можно следующим образом:
$site = ftp_nlist($open,"");
$d = 5;
for ($i = 0; $i < $d; $i++) echo $site[$i];

Функция "ftp_nlist()" возвращает один файл из вашего каталога , если вам нужно просмотреть все файлы, то ее сдедует использовать в цикле, как сделано выше.

Функция "ftp_size()" возвращает размер файла, либо значение "-1" в случае неудачи:
echo ftp_size($open, "test.txt");

Вам может понадобится узнать дату последнего изменения файла . Это осуществимо с помощью функции ftp_mdtm (учтите, что время возвращается в UNIX-формате):
$mod = ftp_mdtm($open,"test.txt");
echo $mod;

Заметьте, функция не работает с директориями. Для удаления файла воспользуйтесь функцией ftp_delete(), например:
ftp_delete($open,"test.txt");

Закрывается же соединение функцией "ftp_close()".
ftp_close($open);

Эта функция аналогична функции fclose() при работе с файлами, в нашем примере идентификатор соединения находится в переменной "$open". Теперь просто фрагмент бессмысленного кода :
ftp_connect("ftp.hot.ee","21","100");
if(!ftp_login($open,"prosto_user","ahahaha"))
exit("Не могу соединиться");
mkdir($open,"test"); //Создали директорию
rmdir($open,"test"); //Удалили директорию
rename($open,"test.txt","test_i_eche_raz_test.txt");
//Переименовали файл
ftp_close($open); //Закрыли поток

Всё, на этом первая глава заканчивается . Здесь дано только представление о возможностях PHP относительно FTP, если как говорится руки дойдут, то напишу вторую главу про FTP , в которой расскажу всё более подробно.

Спасибо за внимание :)
Опубликовал Kest Ноябрь 06 2008 18:45:26 · 0 Комментариев · 6800 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
XPATComponents
Дешифратор содерж...
C++ для начинающих
Preview
Exe in exe
Atb
Java в примерах -...
Последнее загруж...
Нестандартные при...
PHP: Полезные приемы
DCAVI
База Allsubmitter...
Х. М. Дейтел, П. ...
База предприятий ...
Print Grid
Tenis [Исходник н...
Редактор анимаций
ZipTV
Учебник по создан...
Domen Name IP

Топ загрузок
Приложение Клие... 100546
Delphi 7 Enterp... 92604
Converter AMR<-... 20109
GPSS World Stud... 15750
Borland C++Buil... 13285
Borland Delphi ... 9292
Turbo Pascal fo... 7124
Калькулятор [Ис... 5263
Visual Studio 2... 5042
FreeSMS v1.3.1 3564
Случайные статьи
Задача о супружеск...
Цоколь - быть или ...
Как быть, если на ...
Функции обработки ...
Раскрутка, путем р...
Программы
Алгоритм inner_pro...
Описание полей в т...
Проектирование алг...
Суммирование маршр...
Перчатки диэлектри...
Унарные операторы
Создание справочно...
(Ticket Granting S...
Прерывание и обраб...
Экспертная система...
Козырек для мытья ...
Попрактикуйтесь в ...
Заманчивые перспек...
Разновидности комп...
Атака на отказ чер...
Как заполнить табл...
Кто пишет тесты?
Cобытийное моделир...
Unit file format e...
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?