Мне нужен PHP для отправки параметров из одного домена в другой. JavaScript не является вариантом для моей ситуации. Теперь я пытаюсь использовать CURL с PHP, но не смог обойти кросс-домен.
Из domain_A у меня есть страница со следующим PHP с CURL-скриптом:
if (_iscurl()){ echo "<p>CURL is enabled</p>"; $url = "http://domain_B/process.php?id=123&amt=100&jsonp=?"; $ch = curl_init(); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT,10); curl_setopt($ch, CURLOPT_USERAGENT , "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1)"); curl_setopt($ch, CURLOPT_URL, $url ); $return = curl_exec($ch); curl_close($ch); echo "<p>Finished operations</p>"; } else{ echo "CURL is disabled"; } ?>
Я не получаю никаких результатов, поэтому я предполагаю, что скрипт PHP CURL не удался. Любые идеи, чтобы исправить это?
благодаря
Ну, его немного поздно. Но добавив этот ответ для дальнейших читателей, которые могут столкнуться с подобной проблемой. Эта проблема возникает несколько раз, когда мы отправляем запрос php curl из домена, размещенного через http, в домен, размещенный поверх https (http over ssl) .
Просто добавьте ниже фрагмент кода перед выполнением завитка.
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $output = curl_exec($ch);
Использование false в CURLOPT_RETURNTRANSFER
ничего не возвращает с помощью завитка. сделайте это true
(или 1
)
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);