2012-01-04 5 views
2

Я пытаюсь выполнить URL-адреслокон выполнение возвращается пустой в PHP

$ch1 = curl_init(); 

    if (!$ch1) die("Couldn't initialize a cURL handle"); 

$headerinfo = apache_request_headers(); 
curl_setopt($ch1, CURLOPT_URL, $returnurl); 
curl_setopt($ch1, CURLOPT_HEADER, 0); 
curl_setopt($ch1, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($ch1, CURLOPT_POSTFIELDS, $curlPost); 
curl_setopt($ch1, CURLOPT_USERAGENT, $headerinfo['User-Agent']); 
curl_setopt($ch1, CURLOPT_TIMEOUT,1*60); 
$result = curl_exec($ch1); 
    $responseCode = curl_getinfo($ch1, CURLINFO_HTTP_CODE); 
    curl_close($ch1); 

    echo "<pre>"; 
    print_r($httpCode); 
    echo "</pre>"; 
echo "result".$result; 
    echo "responseCode".$responseCode; 
    echo "curlError".curl_error($ch1); 

При выполнении в браузере я получаю XML отображается. но в curl исполнении я получаю ответ как пустой. Что может быть причиной.

+0

код ошибки и ответа 200 – Arasu

+0

@ Arasu: Вы проверили исходный код этой страницы? –

+0

URL-адрес в браузере возвращает отпечатки xml – Arasu

ответ

0

U забыл вернуть результат.

$result = curl_exec($ch1); 
return $result; // RETURN OR ECHO RESULT. 
+0

да, я эхом, но эхо пуст – Arasu

+0

как о создании экземпляра нового объекта XML, например: '$ response = new SimpleXMLElement ($ result); return $ response; ' –

+0

Я не собираюсь ничего с результатом. я обновляю db с помощью responsexml – Arasu

0
$result = curl_exec($ch1); 
$httpCode = curl_getinfo($ch1, CURLINFO_HTTP_CODE); 
curl_close($ch); 
echo $result; 
echo "<pre>"; 
print_r($httpCode); 
echo "</pre>"; 
echo $result; 

Попробуйте это и получить информацию о передаче. Из этой информации заголовка вы можете решить эту проблему.

+0

Я изменил, но все равно возвращает пусто – Arasu

+0

означает, что на этом 'url' нет данных – diEcho

+0

no no. есть данные, которые отображаются при запуске в браузере – Arasu

0

Попробуйте обернуть свой ответ, используя тег html. Я думаю, что это единственный способ увидеть ответ xml в браузерах.

echo "<xmp>"; 
    print_r($result); 
    echo "</xmp>"; 
Смежные вопросы