С Новым годом! Форум программистов, компьютерный форум, киберфорум
PHP: сети
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
175 / 123 / 48
Регистрация: 30.11.2012
Сообщений: 1,324
1

Загрузка файла по ftp

27.09.2016, 11:58. Показов 1506. Ответов 12
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте. Можно ли выполнить загрузку файла с компьютера средствами ftp, в php файл передавать get-запрос с расположением файла на ПК.
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?PHP
header('Content-Type: text/html; charset=utf-8');
$file = 'd:/c#/ps/ps/bin/Release/ps.db'; //Путь к файлу который будем загружать
$remote_file = 'ps.db'; //Путь на сервере куда сохраняется файл
$ftp_server = "domen.ru";
$ftp_user_name = "login";
$ftp_user_pass = "password";
// установка соединения
$conn_id = ftp_connect($ftp_server);
 
// проверка имени пользователя и пароля
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
 
// загрузка файла
if (ftp_put($conn_id, $remote_file, $file, FTP_ASCII)) {
 echo "$file загружен на сервер\n";
} else {
 echo "Не удалось загрузить $file на сервер\n";
}
 
// закрытие соединения
ftp_close($conn_id);
?>
Выдает ошибку "Не удалось загрузить d:/c#/ps/ps/bin/Release/ps.db на сервер"
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
27.09.2016, 11:58
Ответы с готовыми решениями:

Загрузка изображений по ftp из xml файла
Добрый день! Возникла забавная ситуация, над решением которой уже второй день ломаю голову, прошу...

Загрузка файла на FTP по URL (ссылки) с разных сайтов
Нужен скрипт на PHP для загрузки файлов на FTP по URL (ссылки). Т.е. чтобы можно было вставить в...

Загрузка файла через curl, а вместо файла страница с кроказабярами
Скачиваю файл через curl, а вместо него вылазает страница с крокозябрами HTTP/1.1 100 Continue...

Редактирование файла через FTP Соединение
Мне надо в addons/amxmodx/configs/users.ini добавить строку как это можно сделать через ftp, если...

12
119 / 116 / 63
Регистрация: 16.09.2016
Сообщений: 354
27.09.2016, 12:26 2
А что возвращает ftp_connect и ftp_login?
0
175 / 123 / 48
Регистрация: 30.11.2012
Сообщений: 1,324
27.09.2016, 12:37  [ТС] 3
Цитата Сообщение от svs171 Посмотреть сообщение
А что возвращает ftp_connect и ftp_login?
Соединение проходит, я проверял.
echo $login_result; //Возвращается 1

Добавлено через 7 минут
Чтобы пропали все сомнения в том, что проблема может быть в логине или пароле переделал скрипт.
p.s. за одно исправил ошибку, при загрузке не текстовых данных нужно указывать FTP_BINARY, а не FTP_ASCII. На сколько это критично на практике не знаю. Но такой вариант тоже не работает. Мб хостинг нужно как-то настроить?
PHP
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
29
30
31
32
33
34
<?PHP
header('Content-Type: text/html; charset=utf-8');
$file = 'd:/c#/ps/ps/bin/Release/ps.db'; //Путь к файлу который будем загружать
$remote_file = 'ps.db'; //Путь на сервере куда сохраняется файл
$ftp_server = "botmek.ru";
$ftp_user_name = "nalik2kq_passv";
$ftp_user_pass = "nalik2kq_passv";
// установка соединения
$conn_id = ftp_connect($ftp_server);
if($conn_id)
{
    // проверка имени пользователя и пароля
    $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
    if($login_result)
    {
        // загрузка файла
        if (ftp_put($conn_id, $remote_file, $file, FTP_BINARY)) {
         echo "$file загружен на сервер\n";
        } else {
         echo "Не удалось загрузить $file на сервер\n";
        }
    }
    else
    {
        echo "Логин или пароль неверные";
    }
}
else
{
    echo "Ошибка подключения";
}
// закрытие соединения
ftp_close($conn_id);
?>
0
119 / 116 / 63
Регистрация: 16.09.2016
Сообщений: 354
27.09.2016, 13:05 4
проверьте права на запись в папку на сервере + логи ftp-сервера
0
175 / 123 / 48
Регистрация: 30.11.2012
Сообщений: 1,324
27.09.2016, 15:01  [ТС] 5
Цитата Сообщение от svs171 Посмотреть сообщение
проверьте права на запись в папку на сервере + логи ftp-сервера
Да права 700 стоят. А вот на счёт ошибок:
[27-Sep-2016 14:58:38 Europe/Moscow] PHP Warning: ftp_put(d:/file.html): failed to open stream: No such file or directory in /home/n/nalik2kq/domen.ru/public_html/bd/php/ps/users/ftpuploader.php on line 17
Пишет, что нет такого файла или каталога. Почему-то. ftp у меня настроен, что папка users является корневой папкой.
0
119 / 116 / 63
Регистрация: 16.09.2016
Сообщений: 354
27.09.2016, 15:13 6
У Вас на сервере есть файл 'd:/file.html' ?
Судя по сообщению, и диска d: не должно быть
0
175 / 123 / 48
Регистрация: 30.11.2012
Сообщений: 1,324
27.09.2016, 15:17  [ТС] 7
Цитата Сообщение от svs171 Посмотреть сообщение
У Вас на сервере есть файл 'd:/file.html' ?
Нету, видимо я что-то не так понял?!
У меня на компьютере есть файл d:/file.html, т.е. он располагается на диске d и имеет наименование file.html и вот его бы я хотел загрузить в папку users
0
119 / 116 / 63
Регистрация: 16.09.2016
Сообщений: 354
27.09.2016, 16:45 8
Цитата Сообщение от Nalik Посмотреть сообщение
У меня на компьютере есть файл d:/file.html
Откуда сервер знает о содержимом Вашего компьютера? И как он получит доступ к Вашему компьютеру?
0
175 / 123 / 48
Регистрация: 30.11.2012
Сообщений: 1,324
27.09.2016, 17:40  [ТС] 9
Цитата Сообщение от svs171 Посмотреть сообщение
Откуда сервер знает о содержимом Вашего компьютера? И как он получит доступ к Вашему компьютеру?
Я уже понял, что ftp на php нечто другое, чем то что мне нужно, спасибо за помощь(
0
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
27.09.2016, 22:17 10
Nalik, файл где расположен: у клиента или на сервере?
0
175 / 123 / 48
Регистрация: 30.11.2012
Сообщений: 1,324
27.09.2016, 22:34  [ТС] 11
Цитата Сообщение от Jewbacabra Посмотреть сообщение
Nalik, файл где расположен: у клиента или на сервере?
у клиента, на обычном компе.
Я понял, что можно выполнить загрузку файла с ПК только так:
HTML5
1
2
3
4
5
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<form action="upload.php" enctype="multipart/form-data" method="POST" name="form_upload">
  <label>Фото :<input id="file" name="file" type="file" /></label>
  <label><input name="button" type="submit" value="Отправить" /></label>
</form>
Ну и соответственно php файлы с загрузкой через $_FILES
Конечно это немного не то, т.к. я хотел совершать фоновую загрузку файлов по типу ftp..
0
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
27.09.2016, 22:48 12
Цитата Сообщение от Nalik Посмотреть сообщение
Я понял, что можно выполнить загрузку файла с ПК только так
Да, иначе можно было бы выкачать любые файла пользователя с любой веб страницы.
0
175 / 123 / 48
Регистрация: 30.11.2012
Сообщений: 1,324
28.09.2016, 00:19  [ТС] 13
Цитата Сообщение от Jewbacabra Посмотреть сообщение
Да, иначе можно было бы выкачать любые файла пользователя с любой веб страницы.
Действительно, оно и понятно, что такого быть не должно)
Спасибо)
0
28.09.2016, 00:19
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
28.09.2016, 00:19
Помогаю со студенческими работами здесь

Загрузка файла с ftp
Добрый день. Подскажите библиотеку или иной способ для работы с ftp. Нужно просто скачать файл с...

FTP загрузка файла
В общем не сталкивался я раньше с протоколом ftp:// в java, и вот пришлось. Пытаюсь получить список...

Загрузка файла на FTP
Доброго времени суток! На фтп имеется папка images, в которую надо загрузить файл fname. fname...

Загрузка файла из FTP по маске
Добрый день! Необходимо реализовать отправку файла отчета одного из нескольких форматов...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Книги и учебные ресурсы по C#
InfoMaster 08.01.2025
Базовые учебники и руководства Одной из лучших книг для начинающих является "C# 10 и . NET 6 для начинающих" Эндрю Троелсена и Филиппа Джепикса . Книга последовательно раскрывает основные концепции. . .
Что такое NullReferenceEx­­­ception и как исправить?
InfoMaster 08.01.2025
NullReferenceException - одно из самых распространенных исключений, с которым сталкиваются разработчики на C#. Это исключение возникает при попытке обратиться к членам объекта (методам, свойствам или. . .
Что такое Null Pointer Exception (NPE) и как это исправить?
InfoMaster 08.01.2025
Null Pointer Exception (NPE) - это одно из самых распространенных исключений в Java, которое возникает при попытке использовать ссылку на объект, значение которой равно null. Это исключение относится. . .
Русский язык в консоли C++
InfoMaster 08.01.2025
При разработке программ на C++ одной из частых проблем, с которой сталкиваются русскоязычные программисты, является корректное отображение кириллицы в консольных приложениях. Эта проблема особенно. . .
Telegram бот на C#
InfoMaster 08.01.2025
Разработка ботов для Telegram стала неотъемлемой частью современной экосистемы мессенджеров. C# предоставляет мощный и удобный инструментарий для создания разнообразных ботов, от простых. . .
Использование GraphQL в Go (Golang)
InfoMaster 08.01.2025
Go (Golang) является одним из наиболее популярных языков программирования, используемых для создания высокопроизводительных серверных приложений. Его архитектурные особенности и встроенные. . .
Что лучше использовать при создании класса в Java: сеттеры или конструктор?
Alexander-7 08.01.2025
Вопрос подробнее: На вопрос: «Когда одновременно создаются конструктор и сеттеры в классе – это нормально?» куратор уточнил: «Ваш класс может вообще не иметь сеттеров, а только конструктор и геттеры. . .
Как работать с GraphQL на TypeScript
InfoMaster 08.01.2025
Введение в GraphQL и TypeScript В современной разработке веб-приложений GraphQL стал мощным инструментом для создания гибких и эффективных API. В сочетании с TypeScript, эта технология. . .
Счётчик на базе сумматоров + регистров и генератора сигналов согласования.
Hrethgir 07.01.2025
Создан с целью проверки скорости асинхронной логики: ранее описанного сумматора и предополагаемых fast регистров. Регистры созданы на базе ранее описанного, предполагаемого fast триггера. То-есть. . .
Как перейти с Options API на Composition API в Vue.js
BasicMan 06.01.2025
Почему переход на Composition API актуален В мире современной веб-разработки фреймворк Vue. js продолжает эволюционировать, предлагая разработчикам все более совершенные инструменты для создания. . .
Архитектура современных процессоров
inter-admin 06.01.2025
Процессор (центральный процессор, ЦП) является основным вычислительным устройством компьютера, которое выполняет обработку данных и управляет работой всех остальных компонентов системы. Архитектура. . .
История создания реляционной модели баз данных, правила Кодда
Programming 06.01.2025
Предпосылки создания реляционной модели В конце 1960-х годов компьютерная индустрия столкнулась с серьезными проблемами в области управления данными. Существовавшие на тот момент модели данных -. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru