Загрузка, редактирование и повторная загрузка файла FTP с помощью PHP

Я пытаюсь получить файл server.cfg с FTP в форме на моем веб-сайте, используя PHP. После этого я хочу отредактировать файл server.cfg на веб-сайте, нажмите «отправить» и повторно загрузить отредактированный файл на FTP. Я провел некоторое исследование, но у меня все еще есть некоторые ошибки. Мне удалось получить файл в форме: http://elmazmx77.seventyseven.axc.nl /gameservers2.php . Но если я редактирую и сохраняю форму, я получаю ошибки. Мой PHP-код:

<?php

$config = array 
( 
'user'  => 'Hunterr', 
'pass'  => '[PASSWORD]', 
'domain'    => 'ycn-hosting.com:21', 
'file'      => '213.108.31.167-27030/etpro/server.cfg',       # relative to 'domain' 
); 

if(isset($_POST['submit'])) 
{ 
$fp = fopen($config['file'],'w'); 
fwrite($fp,stripslashes($_POST['newd'])); 
fclose($fp); 

$ftp = ftp_connect($config['domain']); 
ftp_login($ftp,$config['user'],$config['pass']); 
ftp_pasv($ftp,TRUE); 
ftp_put($ftp,$config['file'],$config['file'],FTP_BINARY); 
ftp_close($ftp); 

} 
?> 

<form width="440" height="440" method="post" action="<?=( $_SERVER['PHP_SELF'] )?>"> 
 
<input type="submit" name="submit" value="Save"> 
</form>

Есть идеи? (Здесь вы можете увидеть ошибки: http://elmazmx77.seventyseven.axc.nl/gameservers2. PHP ) Строка 13 начинается с: $ fp = fopen ($ config ['file'], 'w'); поэтому вы знаете, откуда исходят ошибки.

заранее спасибо

0
nl ja de

1 ответы

поскольку в сообщении об ошибке говорится: «Предупреждение: fopen (213.108.31.167-27030/etpro/server.cfg) [function.fopen]: не удалось открыть поток: нет такого файла или каталога« вы пытаетесь открыть файл, который не является там. Файл не находится в каталоге, в котором работает ваш скрипт. Используйте абсолютный путь или правильный относительный путь к файлу server.cfg.

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

Г.Л.

0
добавлено
Вы заполняете текстовое поле, открывая файл по ftp. Кажется, он находится в корневом каталоге этой учетной записи. Однако файл сценария находится в каталоге «public_html». Поэтому попробуйте добавить команду «../» к команде fopen: $ fp = fopen («../». $ Config ['file'], 'w');
добавлено автор Leentje, источник
попробуйте использовать абсолютные пути, тогда
добавлено автор Leentje, источник
Привет, спасибо за ответ. Ну, я уверен, что каталог хорош. Кроме того, файл 213.108.31.167-27030/etpro/server.cfg открывается в форме ... Вы можете увидеть его здесь: elmazmx77.seventyseven.axc.nl/gameservers2.php
добавлено автор user2021386, источник
Поэтому я просто редактирую код: $ fp = fopen ("../". $ Config ['file'], 'w'); ? Если я это сделаю, то получаю те же ошибки.
добавлено автор user2021386, источник
phpGeeks
phpGeeks
3 620 участник(ов)

Best PHP chat Еще: @dbGeeks - базы данных @phpGeeksJunior - новичкам @moscowProgers - IT Москва @ebanoePhp - весёлый канал о PHP @laravel_pro - Laravel @jobGeeks - вакансии @jsChat - JS Правила: https://t.me/phpGeeks/764859 ДР - 28.03.2016

PHP
PHP
1 309 участник(ов)

Группа про современный PHP. Обсуждаем ООП, TDD, BDD, DDD, SOLID, GRASP и прочие крутые базворды Для ознакомления: https://gist.github.com/mkusher/711bd46f0b62fbae851182e6fb3b1839 Группа PHP для новичков @phpGeeksJunior Вакансии: https://t.me/fordev

PHP — вакансии, поиск работы и аналитика
PHP — вакансии, поиск работы и аналитика
1 251 участник(ов)

Публикуем вакансии и запросы на поиск работы по направлению PHP, Laravel, Symfony, Yii и т.д. Здесь всё: full-time, part-time, remote и разовые подработки. См. также: @qa_jobs, @devops_jobs, @javascript_jobs, @nodejs_jobs, @uiux_jobs, @products_jobs

phpGeeksJunior
phpGeeksJunior
980 участник(ов)

Группа для новичков. Не стесняйтесь задавать вопросы по php. Не флудить!!!! Правила и полезные ссылки https://gist.github.com/exileed/a53dd0617b35a705ff44b38c8028e6a5 Бест от пхпгикс https://t.me/best_of_phpgeeks

phpclub.ru
phpclub.ru
872 участник(ов)

Официальный чат phpclub.ru - остерегайтесь подделок #rules Правила группы - уважайте друг друга. Скриншоты -> ссылками. Код -> pastebin.com. Вакансии строго -> https://goo.gl/4bNxym, в чат ссылку. За рекламу и мат - БАН!

Devall | PHP
Devall | PHP
272 участник(ов)

Пристанище для восходящих звёзд разработки, которые перейдут на более адекватные языки. http://combot.org/chat/-1001014863761 Инвайт: j.mp/devallphp