формирование и посылка post

Discussion in 'PHP' started by .::BARS::., 16 Jul 2009.

  1. .::BARS::.

    .::BARS::. Elder - Старейшина

    Joined:
    13 Oct 2007
    Messages:
    379
    Likes Received:
    45
    Reputations:
    10
    привет... есть такой вопросик...
    есть сайт www
    на этом сайте есть авторизация и юзвери... надо делать им рассылочку...
    есть форма в ЛС но посылка не get а post...
    возникает вопрос, как послать в заголовке пост запрос в виде сообщения....
    + передать куки для авторизации...
     
  2. MuXaJIbI4

    MuXaJIbI4 Member

    Joined:
    20 Nov 2008
    Messages:
    66
    Likes Received:
    7
    Reputations:
    0
    ты сам то понял чего сказал
     
  3. .::BARS::.

    .::BARS::. Elder - Старейшина

    Joined:
    13 Oct 2007
    Messages:
    379
    Likes Received:
    45
    Reputations:
    10
    нет блять.... я долбаеб....
    не знаешь... нехер писать без надобности
     
  4. Fepsis

    Fepsis Elder - Старейшина

    Joined:
    17 Sep 2008
    Messages:
    791
    Likes Received:
    391
    Reputations:
    72
    Легче всё сделать курлом...
     
  5. FireFenix

    FireFenix Elder - Старейшина

    Joined:
    3 Jun 2009
    Messages:
    390
    Likes Received:
    115
    Reputations:
    23
    Читаем мануал по CURL http://ru.php.net/manual/ru/book.curl.php

    PHP:
    <?php 
    $curl 
    curl_init(); //Инициализация CURL
    curl_setopt($curlCURLOPT_HEADERFalse); //Отключаем вывод заголовков в результате
    curl_setopt($curlCURLOPT_POSTTrue); //Включаем использование метода POST
    curl_setopt($curlCURLOPT_RETURNTRANSFERTrue); //Включаем вывод результата
    curl_setopt($curlCURLOPT_USERAGENT"Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");  //Задаём используемый ююезр-агент
    curl_setopt($curlCURLOPT_FOLLOWLOCATIONTrue); //Включаем обработку редиректов
    curl_setopt($curlCURLOPT_COOKIEFILE"cookiefile.txt");  //Задаём файл для кукисов
    curl_setopt($curlCURLOPT_COOKIEJAR"cookiefile.txt"); //Задаём файл для кукисов

    curl_setopt($curlCURLOPT_URL"http://site.ru"); //Задаём сайт отправки
    curl_setopt($curlCURLOPT_POSTFIELDS"var1=value&var2=value&var3=value"); //Задаём текст отправки POST (переменная=значение)
    $xxx curl_exec($curl); //Выполняем запрос

    curl_close ($curl); //Закрываем CURL
    echo $xxx//Вывод результат на экран

    ?>
    На сокетах будет типа
    PHP:
    $postvars = array(
      
    ”var1” => “value1”,
      
    ”var2” => “value2”,
      
    ”var3” => “value3”
    ); //Массив переменных

    //Приведение массива к строке
    $postdata “”;
    foreach ( 
    $postvars as $key => $value )
        
    $postdata .= &.rawurlencode($key).=.rawurlencode($value);
    $postdata substr$postdata);

    $fp fsockopen("http://www.site.ru"80); //Открываем сокет
    //Формируем заголовок
    $send “”;
    $send .= “POST /accounts/ClientLogin HTTP/1.1\r\n”;
    $send .= “Hostwww.google.com\r\n”;
    $send .= “Content-length.strlen($postdata).\r\n”;
    $send .= “Content-typetext/plain\r\n”;
    $send .= “Connectionclose\r\n”;
    $send .= \r\n”;
    $send .= $postdata.\r\n\r\n”;

    fputs($fp$send); //Отправляем
    $html fread($fp1000000); //Читаем
    fclose($fp); //Закрываем

    echo $html//Выводим на экран

    //Парсим куки в заголовке (Set-Cookie:) и потом обратно пересылаем со следующим запросом
     
    #5 FireFenix, 16 Jul 2009
    Last edited: 16 Jul 2009
    1 person likes this.
  6. roddik

    roddik Member

    Joined:
    14 Jan 2009
    Messages:
    117
    Likes Received:
    13
    Reputations:
    0
    Еще легче Mechanize-ом
     
  7. .::BARS::.

    .::BARS::. Elder - Старейшина

    Joined:
    13 Oct 2007
    Messages:
    379
    Likes Received:
    45
    Reputations:
    10
    спасибо... тема исчерпана