Как лучше реализовать передачу данных клиенту?

Статус
В этой теме нельзя размещать новые ответы.

асс

Мой дом здесь!
Регистрация
13 Окт 2006
Сообщения
762
Реакции
230
Суть такова.
есть сайт Х , задача сайта отправить на другой сайт в базу данных информаци.


тоесть я имею в базе данных погоду,
далее мне надо раз в день отпавить данные погоды на сайты А Б В

В общем сайт Х должен каждый день отправить погоду на сайты А Б В

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

тоесть получатеся принцип формы на сайте, только тут данные уходя с помощью POST передачи.

Самое просто это сайту который хочет получать погоду на сайте Х

Но мне надо чтобы всем рулил главный сайт, и сам отправлял
по крону информацию на другие сайты.

Как лучше такое реализовать?

буду благодарен за любые идеи и мысли, куда лучше двигаться?
Реализация должна быть на PHP sql

спасибо.
 
ну имхо всетаки на сайтах а, б, в, делать автоматическое обращение к сайту х и если информация устарела- обновлять ее

весьма корявый вариант- если есть доступ к фтпшнику сайтов- коннектиться на него с сайта х, заливать данные, на сайтах соответственно проверять не устарела ли инфа по отношению к файлу что на фтп уже лежит
 
ну имхо всетаки на сайтах а, б, в, делать автоматическое обращение к сайту х и если информация устарела- обновлять ее
весьма корявый вариант- если есть доступ к фтпшнику сайтов- коннектиться на него с сайта х, заливать данные, на сайтах соответственно проверять не устарела ли инфа по отношению к файлу что на фтп уже лежит

дело в том что надобно именно чтобы сайт Х рассылал сам.

Принцип как у сапы, тоесть сайты WM это как бы сайты а, б, в,


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

В принципе там даже авторизация не требуется по идее.
 
может тогда при загрузке сайтов стоит дергать твой сайт х? ну типа как большинство информеров реализовано?
 
может тогда при загрузке сайтов стоит дергать твой сайт х? ну типа как большинство информеров реализовано?


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


может тогда как у сапы. там походу стоит скрипт который лезет в акк и там проверяет ссылки через определенное время.


Вот код из сапы
PHP:
 * Функция для подключения к удалённому серверу
     */
    function fetch_remote_file($host, $path) {

        $user_agent = $this->_user_agent.' '.$this->_version;

        @ini_set('allow_url_fopen',          1);
        @ini_set('default_socket_timeout',   $this->_socket_timeout);
        @ini_set('user_agent',               $user_agent);
        if (
            $this->_fetch_remote_type == 'file_get_contents'
            ||
            (
                $this->_fetch_remote_type == ''
                &&
                function_exists('file_get_contents')
                &&
                ini_get('allow_url_fopen') == 1
            )
        ) {
			$this->_fetch_remote_type = 'file_get_contents';
            if ($data = @file_get_contents('http://' . $host . $path)) {
                return $data;
            }

        } elseif (
            $this->_fetch_remote_type == 'curl'
            ||
            (
                $this->_fetch_remote_type == ''
                &&
                function_exists('curl_init')
            )
        ) {
			$this->_fetch_remote_type = 'curl';
            if ($ch = @curl_init()) {

                @curl_setopt($ch, CURLOPT_URL,              'http://' . $host . $path);
                @curl_setopt($ch, CURLOPT_HEADER,           false);
                @curl_setopt($ch, CURLOPT_RETURNTRANSFER,   true);
                @curl_setopt($ch, CURLOPT_CONNECTTIMEOUT,   $this->_socket_timeout);
                @curl_setopt($ch, CURLOPT_USERAGENT,        $user_agent);

                if ($data = @curl_exec($ch)) {
                    return $data;
                }

                @curl_close($ch);
            }

        } else {
			$this->_fetch_remote_type = 'socket';
            $buff = '';
            $fp = @fsockopen($host, 80, $errno, $errstr, $this->_socket_timeout);
            if ($fp) {
                @fputs($fp, "GET {$path} HTTP/1.0\r\nHost: {$host}\r\n");
                @fputs($fp, "User-Agent: {$user_agent}\r\n\r\n");
                while (!@feof($fp)) {
                    $buff .= @fgets($fp, 128);
                }
                @fclose($fp);

                $page = explode("\r\n\r\n", $buff);

                return $page[1];
            }

        }

        return $this->raise_error('Не могу подключиться к серверу: ' . $host . $path.', type: '.$this->_fetch_remote_type);
    }


Тоесть получается что проще переложить всю работу на сайты, которые получают инфу.

В общем надо подумать.
 
нет проблем с выдачей уникальной инфы же. сайт обращается к скрипту на сайте х, сайт х проверяет в бд урл обращения и, например, ключ. далее если все ок- выдает нужную информацию
 
на сколько знаю - можно решить задачу веб-серверами посредством SOAP
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху