2015-10-05 47 views
-1

我试图发布并从其他网站获取结果,但并不总是显示。使用cURL和PHP无法看到结果

这是后并获取代码:

<?php 
$data = array("categoryCode" => $_POST['CELL_PHONES_STORE'], "code" => $_POST['CELL_PHONE_IMEI_ESN'], "imeiEsn" => $_POST['imeiEsn'], "modelCode" => $_POST['APPLA1533IPHONE5S16GBATT'], "program" => $_POST['ATT']); 
$url = 'https://atttradein.flipswap.com/api/rest/v2/serialnumbers?='.$data; 
$post = curl_init(); 
curl_setopt($post, CURLOPT_URL, $url); 
curl_setopt($post, CURLOPT_RETURNTRANSFER, 1); 
$result = curl_exec($post); 
curl_close($post); 
print_r(json_decode($result)); 

?> 
+0

你确定你得到JSON编码的数据?也许解码调用简单地失败?你有没有检查你的http服务器错误日志文件? – arkascha

+0

另外,你必须改变你打电话的方式:你写你想打一次POST电话,但你不告诉curl这样做。此外,你不能简单地追加一个数组到网址,这是什么意思给?相反,您必须将您的数据(数组)作为卷曲选项交给它,并让它发出发布请求。 – arkascha

回答

1

现在我尝试这个代码

$data = array("categoryCode" => $_POST['CELL_PHONES_STORE'], "code" => $_POST['CELL_PHONE_IMEI_ESN'], "imeiEsn" => $_POST['imeiEsn'], "modelCode" => $_POST['APPLA1533IPHONE5S16GBATT'], "program" => $_POST['ATT'], "referer" => "https://buyback.att.com/"); 
 

 

 
//set POST variables 
 
$url = 'https://atttradein.flipswap.com/api/rest/v2/serialnumbers?='; 
 

 

 
//open connection 
 
$ch = curl_init(); 
 

 
//set the url, number of POST vars, POST data 
 
curl_setopt($ch,CURLOPT_URL, $url); 
 

 
curl_setopt ($ch, CURLOPT_POST, true); 
 
curl_setopt($ch,CURLOPT_POSTFIELDS, http_build_query($data)); 
 
curl_setopt ($ch, CURLOPT_REFERER, 'https://buyback.att.com/'); 
 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
 
curl_setopt($ch, CURLOPT_STDERR, fopen('php://output', 'w+')); 
 
curl_setopt($ch, CURLOPT_VERBOSE, 1); 
 

 
//execute post 
 
$result = curl_exec($ch); 
 

 

 

 
//close connection 
 
curl_close($ch); 
 
echo $result;