Проблема с FTP upload на хостинге

Markus

Новичок
Проблема с FTP upload на хостинге

Всем доброе время суток, женскую половину поздравляю с праздником.

Использую скрипт для перекачки файлов через ftp, копируется файл с удаленного сервера на фтп хостинга.
Тестирую на локальном сервер, все работает, файл копируется.
При переносе на сервер выдается такая ошибка

Warning: ftp_fput(): bind() failed: Operation not permitted (1) in /home/work/public_html/function.php on line 29

Warning: ftp_fput(): Login successful. Have fun. in /home/work/public_html/function.php on line 29

небольшой кусок кода

PHP:
$fp = fopen($file_open, 'r'); 
if (ftp_fput($conn_id, $file_save, $fp, FTP_BINARY)) {
echo "ok\n";
} 
else {
echo "error\n";
}
подскажите пожалуйста, в чем сама проблема, по возможности ссылку на фак по этой проблеме.
Заранее спасибо
 

Markus

Новичок
Фанат
как раз это и не понятно, с локального сервака скрипт выполняется, но я хочу как раз на примере разобраться
 

Фанат

oncle terrible
Команда форума
я прочитал в документации описание функции ftp_fput и не понимаю, какое отношение она имеет к копированию файлов с удалённого сервера на диск хостинга.
А документации я, извинию, верю гораздо больше, чем тебе.

поэтому вместо ответа на впорос, "почему там работало, а здесь нет" я могу ответить только на вопрос "почему не работает". Потому, что функция тут совершенно не та, которая нужна
 

Markus

Новичок
Прошу поправить если не прав.

ftp_fput - загрузка открытого файла на сервер.

$fp = fopen($file_open, 'r'); этой строкой открываю файл
 

Фанат

oncle terrible
Команда форума
"файл", значит, у тебя удалённый.
и ты его открываешь по протоколу для локальных файлов, если не считать недоврапперов.

а кладешь ты его на локальный, по отношению к скрипту, диск своего провайдера.
и кладёшь, используя протокол для работы с удалёнными серверами.

поправь меня, если я где-то неправильно понял.
 

Markus

Новичок
все понял, понял ошибку.
На локальном это работает, потому что source и dest удаленные.
На на хостинге не пашет, потому что локальный уже получается.
Но как тогда быть, все это из за того что хостинг не позволяет upload > 10 мегобайт
 

Фанат

oncle terrible
Команда форума
здрасьте-приехали
при чем здесь upload теперь нарисовался?
все понял, понял ошибку.
На локальном это работает, потому что source и dest удаленные.
как же ты заблуждаешься...
 

Markus

Новичок
Про upload я упомянул , пытаюсь найти выход через загрузку по фтп, так как можно закачивать неограниченный размер.

А работает, я так понял что из за того что скрипт запускается на локальном, сервере, не на хостинге, куда будет закачиватся файл

-~{}~ 08.03.05 13:31:

Хотя в документации указано что source это локальный файл
 

Фанат

oncle terrible
Команда форума
Не работает у тебя потому, что ты не понимаешь, что такое файл. что такое ftp. что такое аплоад. и что для чего нужно.

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

Markus

Новичок
Да, к сожалению не могу закачать файл больше 10 мегобайт, хостинг не дает.
Поэтому хотел через фтп, но вижу ошибся.
Есть какие выходы, не разбивать же его на куски?

-~{}~ 08.03.05 13:36:

а копирую таким способом

PHP:
function file_copy ($url, $file_name) {
  $fr = fopen ($url, "rb"); 
  $fw = fopen ($file_name, "wb"); 
  $read = ""; 
  while (true) { 
    $read_1 = fread ($fr, 1024); 
    if (strlen ($read_1) == 0) break; 
    $read .= $read_1; 
    } 
  $res = fputs ($fw, $read); 
  fclose ($fr); 
  fclose ($fw); 
  return ($res); 
}
 

Фанат

oncle terrible
Команда форума
Да, к сожалению не могу закачать файл больше 10 мегобайт
поскольку ты не понимаешь смысла слов, которые употребляешь, я вынужден уточнить: что ты имеешь ввиду под словом "закачать"?
Поэтому хотел через фтп
милый друг.
когда разработчик сайта хочет что-то закачать на сайт по ФТП, он не занимается извращениями с php_ftp.
он просто берет фтп-клиент, FAR, к примеру, и нажимает кнопочку F5.
И чем тебя этот способ не устроил - я совершенно не понима...
ой, Ё!
Только не это!!!
"локальный файл" - это файл у пользователя на диске???????
 

Markus

Новичок
Под словом закачать я имею ввиду загрузить файл на сервер. Скрипт который указа чуть выше, закачивает удаленные файлы, но не больше 10 мегобайт, 5 мегобайт к примеру копирует, но тут уже немного есть неувереность, так как файл 5 мегобайт беру с этого же сервера. Насчем планки 10 мегобайт узнал в phpinfo, там max_upload_size, но опять же тут не уверен, есть ли разница закачивать файл с своего компа (в этом случае же сначала кладется в папку temp на сервере) или копировать с удаленного сервера ( как в этом случае происходит).

Насчет фтп клиента, способ не подходит, так как пришлось бы каждый день копировать файл вручную.

И локальный файл это я имел ввиду, тот файл который находится на сервере уже.
 

Фанат

oncle terrible
Команда форума
Насчем планки 10 мегобайт узнал в phpinfo, там max_upload_size, но опять же тут не уверен, есть ли разница закачивать файл с своего компа (в этом случае же сначала кладется в папку temp на сервере) или копировать с удаленного сервера ( как в этом случае происходит).
Есть. Разница. "копирование с удаленного сервера" не имеет никакого отношения ни к max_upload_size, ни к upload вообще.

-~{}~ 08.03.05 13:59:

поясни еще такой момент
а копирую таким способом
function file_copy ($url, $file_name) {
что копируешь? почему копируешь?
какое эта функция имеет отношение ко всему тому, что мы тут так увлекательно обсуждаем?
 

Markus

Новичок
Так сомнения с этим решились,
но тогда не могу понять, почему же скрипт (второй) не работает, создает файл но размером ноль а потом выдает что страница не доступна. Правда какое-то время работал он, копировал. На папке стоит куда закачивается 777 chmod, правильно ли это?

-~{}~ 08.03.05 14:05:

--------
почему ты не можешь просто открыть удалённый "файл" и сохранить его на диск?
--------

Эта функция правда уже не по теме, но копировал

$url="http://host/file.zip";
$file_name="./stor/file.zip";
к примеру
 

Фанат

oncle terrible
Команда форума
как это не по теме?
эта функция - единственное, что тебе может помочь, насколько я понимаю ситуацию после многотрудных обсуждений
 

Markus

Новичок
да, но она перестала работать, хотя бы какую нибудь ошибку кроме файла размером ноль и The page cannot be displayed после выполнения скрипта выдала бы, прихлдит только одна мысль что файл рамером ноль байт это нет места, но места 600 мегобайт еще свободно на хостинге
 

Фанат

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