Сабмиттер по списку URL

Тема в разделе "Как сделать...", создана пользователем Burunduk1982, 19 янв 2014.

  1. Burunduk1982

    Burunduk1982

    Регистр.:
    26 мар 2007
    Сообщения:
    627
    Симпатии:
    112
    Есть некоторое кол-во сайтов на разных серверах, с разными базами и т.д., но на одной CMS и с одной структурой шаблона. На каждом сайте есть один и тот же раздел, в который необходимо постить информацию (объявления, новости, акции, товары и т.д.), но совершать это вручную на каждом сайте не доставляет удовольствия. Хотелось бы автоматизировать постинг информации по списку URL из php-скрипта, который будет работать, как на локальной машине, так и на веб-хостинге. Формы добавления информации на сайтах практически идентичные (нужные поля формы для заполнения совпадают на 100%), каптчу убрал. Данные типа: тайтл, категория, контент, телефон/скайп/мэйл, цена, фотографии. Если есть несложные примеры или училка для начинающих, скажу огромное спасибо ;)
     
  2. Vishez

    Vishez

    Регистр.:
    19 авг 2013
    Сообщения:
    169
    Симпатии:
    81
    Контент разве не в БД хранится? Я может что-то не понимаю, но по-моему легче сразу в БД инфу добавлять)
     
  3. Burunduk1982

    Burunduk1982

    Регистр.:
    26 мар 2007
    Сообщения:
    627
    Симпатии:
    112
    Ммм, еще раз попробую объяснить)

    и я вот не понимаю, как мне сразу добавить инфу в БД каждого сайта, когда все сайты размещены на разных серверах!? Т.е. логику понимаю, что данные из одной формы необходимо передавать формам других сайтов, вернее скрипту обработчику. Но вот как это сделать для списка URL?
     
  4. Vishez

    Vishez

    Регистр.:
    19 авг 2013
    Сообщения:
    169
    Симпатии:
    81
    Если у тебя есть имя сервера БД, имя базы, логин и пароль, то просто подключаешься в php скрипте к базе данных и записываешь в таблицу данные(объявления, новости, акции, товары например). Естественно нужно будет вначале изучать структуру таблицы в которую будешь добавлять что-нибудь)
     
  5. Burunduk1982

    Burunduk1982

    Регистр.:
    26 мар 2007
    Сообщения:
    627
    Симпатии:
    112
    Спасибо, но я не имею удаленного доступа к MySQL серверу тех сайтов, потому задача стоит именно в передаче данных другим сайтам методом POST, например.

    зы.. может и впрямь что-то не так объясняю)) Мне нужно, чтобы из одного скрипта, который находится на сайте site-one.ru, при добавлении данных через html-форму, данные передавались сайтам site-two.ru, site-three.ru, site-four.ru и т.д.

    зы..зы.. форма на всех сайтах, допустим, такого плана:
    HTML:
    <form action="/add.php" method="POST" enctype="multipart/form-data">
        <input type="text" name="title" class="input" maxlength="255" value="" />
        <textarea name="description" class="input" rows="4"></textarea>
        <input name='file[]' type='file' multiple='true' />
        <input type="button" value="Отправить" onClick="javaScript: Add();" />
        <input type="reset" value="Очистить" />
    </form>
     
    Последнее редактирование: 19 янв 2014
  6. Prostobv

    Prostobv Создатель

    Регистр.:
    4 дек 2013
    Сообщения:
    20
    Симпатии:
    8
    хостеры как правило не дают прямой доступ к БД с других хостов..

    я бы посоветовал воспользоваться библиотечкой Curl, можно вот эту статейку почитать
     
    Burunduk1982 нравится это.
  7. megabil

    megabil Постоялец

    Регистр.:
    31 авг 2006
    Сообщения:
    143
    Симпатии:
    49
    если не обязательно с помощью пхп, то можно зенопостером настроить по быстрому постинг, а так да курлом
     
  8. Burunduk1982

    Burunduk1982

    Регистр.:
    26 мар 2007
    Сообщения:
    627
    Симпатии:
    112
    а как подсунуть список сайтов? просто сейчас нет возможности проверить, но должно получиться так?
    PHP:
    $title = ($_POST["title"]);
    $cat = ($_POST["cat"]);

    $urls = array(
    "http://site1.ru/add.php",
    "http://site2.ru/add.php",
    "http://site3.ru/add.php"
    );

    if( 
    $curl curl_init() ) {
        
    curl_setopt($curlCURLOPT_URL$urls);
        
    curl_setopt($curlCURLOPT_RETURNTRANSFER,true);
        
    curl_setopt($curlCURLOPT_POSTtrue);
        
    curl_setopt($curlCURLOPT_POSTFIELDS"title=".$title."&cat=".$cat);
        
    $out curl_exec($curl);
        
    curl_close($curl);
      }
     
  9. megabil

    megabil Постоялец

    Регистр.:
    31 авг 2006
    Сообщения:
    143
    Симпатии:
    49
    что-то типа такого должно быть
    PHP:
    $title = ($_POST["title"]);
    $cat = ($_POST["cat"]);

    $urls = array(
    "http://site1.ru/add.php",
    "http://site2.ru/add.php",
    "http://site3.ru/add.php"
    );

    foreach(
    $urls as $url){
    if( 
    $curl curl_init() ) {
        
    curl_setopt($curlCURLOPT_URL$url);
        
    curl_setopt($curlCURLOPT_RETURNTRANSFER,true);
        
    curl_setopt($curlCURLOPT_POSTtrue);
        
    curl_setopt($curlCURLOPT_POSTFIELDS"title=".$title."&cat=".$cat);
        
    $out curl_exec($curl);
        
    curl_close($curl);
    }
    }
     
    Burunduk1982 нравится это.