Загрузка файлов выгрузки 1С на хостинг

Тема в разделе "PHP", создана пользователем zek24, 3 май 2012.

Статус темы:
Закрыта.
Модераторы: latteo
  1. zek24

    zek24

    Moderator
    Регистр.:
    14 ноя 2009
    Сообщения:
    777
    Симпатии:
    231
    Возникла следующая задача
    - 1С делает выгрузку файлов (тхт) на сервер фирмы
    - PHP скрипт (установленный на сайте) с некоторой периодичностью подбирает эти файлы и обрабатывает инфу в них

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

    latteo Эффективное использование PHP, MySQL

    Moderator
    Регистр.:
    28 фев 2008
    Сообщения:
    1.451
    Симпатии:
    1.244
    Стукнуть админам фирмы, чтобы они дали доступ к серверу, например по http или ftp протоколам. Либо делали так же выгрузку на ftp сайта.
     
  3. zek24

    zek24

    Moderator
    Регистр.:
    14 ноя 2009
    Сообщения:
    777
    Симпатии:
    231
    фтп доступ должны дать, не могу понять чем лучше подхватывать эти файлы (после проверки даты последнего изменения) и переписывать на хостинг.
     
  4. latteo

    latteo Эффективное использование PHP, MySQL

    Moderator
    Регистр.:
    28 фев 2008
    Сообщения:
    1.451
    Симпатии:
    1.244
  5. zek24

    zek24

    Moderator
    Регистр.:
    14 ноя 2009
    Сообщения:
    777
    Симпатии:
    231
    Итак, немного поработал с мануалом и написал следующий код:
    PHP:
    $ftp_server "100.101.102.103";
    $ftp_user "user";
    $ftp_pass "pass";
    $local_file "tt.txt";
    $server_file "tt.txt";
     
    // установить соединение или выйти
    $conn_id ftp_connect($ftp_server) or die("Не удалось установить соединение с $ftp_server");
     
    // попытка входа
    if (@ftp_login($conn_id$ftp_user$ftp_pass)) {
        echo 
    "Произведен вход на $ftp_server под именем $ftp_user\n".'<br>';
        if (
    ftp_get($conn_id$local_file$server_fileFTP_BINARY)) {
            echo 
    "Произведена запись в $local_file\n";
        } else {
            echo 
    "Не удалось завершить операцию\n";
        }
     
    } else {
        echo 
    "Не удалось войти под именем $ftp_user\n";
    }
     
    // close the connection
    ftp_close($conn_id);
    Проверил на денвере - все работает, файл закачивается.
    Залил файл на хост и получил
    Fatal error: Call to undefined function ftp_connect() in /usr/home/www/data/zek244/data/www/site.com/index.php on line 15

    Правильно ли я понял, что у моего хоста отключена эта функция? Или есть решение этой проблемки?
     
  6. latteo

    latteo Эффективное использование PHP, MySQL

    Moderator
    Регистр.:
    28 фев 2008
    Сообщения:
    1.451
    Симпатии:
    1.244
    Проверь, что вернёт phpinfo(); в строке disable_functions

    Попробуй поработать с FTP стандартными функциями для файловой системы, http://ua2.php.net/manual/ru/wrappers.ftp.php
     
    zek24 нравится это.
  7. zek24

    zek24

    Moderator
    Регистр.:
    14 ноя 2009
    Сообщения:
    777
    Симпатии:
    231
    disable_functions no value no value

    Связался с хостом, сказали что эта функция у них отключена, завтра переведут на другой сервер. Продолжение следует...
     
  8. zek24

    zek24

    Moderator
    Регистр.:
    14 ноя 2009
    Сообщения:
    777
    Симпатии:
    231
    Проблема решена - была на стороне хоста, все поправили.
     
Статус темы:
Закрыта.