Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: fsockopen
 
 автор: Artavazd   (15.08.2009 в 11:28)   письмо автору
 
 

 
function PostRequest($url, $referer, $_data) {

    // convert variables array to string:
    $data = array();    
    while(list($n,$v) = each($_data)){
        $data[] = "$n=$v";
    }    
    $data = implode('&', $data);
    // format --> test1=a&test2=b etc.
 
    // parse the given URL
    $url = parse_url($url);

    // extract host and path:
    $host = $url['host'];
    $path = $url['path'];

    // open a socket connection on port 80
    //$fp = fsockopen($host, 80);
    $fp = fsockopen("ssl://".$host, 443);

    // send the request headers:
    fputs($fp, "POST $path HTTP/1.1\r\n");
    fputs($fp, "Host: $host\r\n");
    fputs($fp, "Referer: $referer\r\n");
    fputs($fp, "Content-type: application/x-www-form-urlencoded\r\n");
    fputs($fp, "Content-length: ". strlen($data) ."\r\n");
    fputs($fp, "Connection: close\r\n\r\n");
    fputs($fp, $data);

    $result = ''; 
    $safe=0;
    while(!feof($fp)&&$safe<1000) {
        // receive the results of the request
        $result .= fgets($fp, 128);
        $safe++;
    }

    // close the socket connection:
    fclose($fp);
 
    // split the result header from the content
    $result = explode("\r\n\r\n", $result, 2);
 
    $header = isset($result[0]) ? $result[0] : '';
    $content = isset($result[1]) ? $result[1] : '';
 
    // return as array:
    return array($header, $content);
}



С помощю этой функции хочу подключить мой сайт к другому серверу. IP моего саита зарегистрирован в том сервере, которуму хочу подключится. Во время подключения сервер проверяет IP, но вместо IP саита получает IP клиента(то есть локальныи IP моего компютера). Как сделать, чтобы сервер получил IP саита.

  Ответить  
 
 автор: Trianon   (15.08.2009 в 15:23)   письмо автору
 
   для: Artavazd   (15.08.2009 в 11:28)
 

>но вместо IP саита получает IP клиента(то есть локальныи IP моего компютера).

у сайта IP НЕТу. IP есть у сервера, который его обслуживает.
Или у маршрутизатора, через который идут обращения из одной сети в другую.

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

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования