2015-12-03 2 views
0

У меня есть этот код:PHP Curl не отправляет запрос POST на сервер

<?php 
$data = array('name' => 'Ross', 'php_master' => true); 

$url = 'http://dsaasd.adsds.nl:8081/cops.nsf/orders?openagent'; 


$html_brand = "www.google.com"; 
$ch = curl_init(); 

$options = array(
    CURLOPT_URL   => $url, 
    CURLOPT_RETURNTRANSFER => true, 
    CURLOPT_HEADER   => true, 
    CURLOPT_FOLLOWLOCATION => true, 
    CURLOPT_ENCODING  => "", 
    CURLOPT_AUTOREFERER => true, 
    CURLOPT_CONNECTTIMEOUT => 120, 
    CURLOPT_TIMEOUT  => 120, 
    CURLOPT_MAXREDIRS  => 10, 
    CURLOPT_VERBOSE => true, 
); 
curl_setopt_array($ch, $options); 
$response = curl_exec($ch); 
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE); 

if ($httpCode != 200){ 
    echo "Return code is {$httpCode} \n" 
     .curl_error($ch); 
} else { 
    echo "<pre>".htmlspecialchars($response)."</pre>"; 
} 

curl_close($ch); 

?> 

Проблема заключается в том, если я отправить локон пост в: $ URL = 'http://dsaasd.adsds.nl:8081/cops.nsf/orders?openagent';

Тогда это НЕ работает.

Но если я отправляю curl сообщение на ту же службу, но на другом сервере, то это работает, это другой сервер $ url = 'http://dsaasd.adsds.nl:80/cops.nsf/orders?openagent';

Я также отправляю данные обычной почтой в форму: $ url = 'http://dsaasd.adsds.nl:8081/cops.nsf/orders?openagent'; И затем он работает, и я получаю данные на сервере.

Но с этим завитка пост я получаю: код возврата 0 Не удалось подключиться к 11.43.45.123: Сеть недостижима

Кто-нибудь есть какие-либо идеи?

+0

Возможный дубликат http://stackoverflow.com/questions/12296606/php-curl-on-81-port –

+0

Решение не работает :( – YdB

ответ

0

Я думаю, вам нужно добавить CURLOPT_POST в массив $options. Документы here.

+0

Nope ничего не меняет, я думаю, он имеет отношение к порту 8081 – YdB

+0

попробовать установить 'CURLOPT_PORT' тоже? – thelastshadow

+0

решение не работает :( – YdB

Смежные вопросы