Php 未使用列表函数(?)正确传递变量
下面是我使用的一个片段,它从指定2个变量的URL收集JSON中的一些数据:Php 未使用列表函数(?)正确传递变量,php,post,curl,explode,Php,Post,Curl,Explode,下面是我使用的一个片段,它从指定2个变量的URL收集JSON中的一些数据: <?php function soldipubblici() { $curl_parameters = array( 'codicecomparto' => "PRO", 'codiceente' => "011120674", ); $ch = curl_init(); curl_setopt($ch,CU
<?php
function soldipubblici() {
$curl_parameters = array(
'codicecomparto' => "PRO",
'codiceente' => "011120674",
);
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,"http://soldipubblici.gov.it/it/ricerca");
curl_setopt($ch,CURLOPT_POST,true);
curl_setopt($ch,CURLOPT_POSTFIELDS,http_build_query( $curl_parameters ));
curl_setopt($ch,CURLOPT_HTTPHEADER,array (
"Content-Type: application/x-www-form-urlencoded; charset=UTF-8",
"Accept: application/json",
"X-Requested-With: XMLHttpRequest",
));
$output=curl_exec($ch);
curl_close($ch);
}
echo soldipubblici();
?>
请求工作正常,在更改事件中,我成功获得POST值:
由于它起作用了,我现在可以在richiesta.php中放置带有两个变量的“real”函数,这次不是手动的,而是从POST请求中检索值:
<?php
function soldipubblici() {
list($comparto, $ente) = explode("-", $_POST['value'], 2);
$curl_parameters = array(
'codicecomparto' => $comparto,
'codiceente' => $ente,
);
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,"http://soldipubblici.gov.it/it/ricerca");
curl_setopt($ch,CURLOPT_POST,true);
curl_setopt($ch,CURLOPT_POSTFIELDS,http_build_query( $curl_parameters ));
curl_setopt($ch,CURLOPT_HTTPHEADER,array (
"Content-Type: application/x-www-form-urlencoded; charset=UTF-8",
"Accept: application/json",
"X-Requested-With: XMLHttpRequest",
));
$output=curl_exec($ch);
curl_close($ch);
}
echo soldipubblici();
?>
不幸的是,它不起作用:(
我在Firebug中得到一个空响应…如果在同一个代码段中,我手动设置了2个变量,而不是If works…似乎它们没有从
列表函数中正确传递。选项中的-
周围有空格,您可能需要删除它们
$curl_parameters = array(
'codicecomparto' => trim($comparto),
'codiceente' => trim($ente),
);
最后一件事:我如何修改jQuery代码片段以在输入框(而不是“this.value”)中输出响应(现在我只能通过Firebug看到该响应)?向$.post()
添加一个回调函数,该函数满足您对响应的要求。
<?php
function soldipubblici() {
list($comparto, $ente) = explode("-", $_POST['value'], 2);
$curl_parameters = array(
'codicecomparto' => $comparto,
'codiceente' => $ente,
);
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,"http://soldipubblici.gov.it/it/ricerca");
curl_setopt($ch,CURLOPT_POST,true);
curl_setopt($ch,CURLOPT_POSTFIELDS,http_build_query( $curl_parameters ));
curl_setopt($ch,CURLOPT_HTTPHEADER,array (
"Content-Type: application/x-www-form-urlencoded; charset=UTF-8",
"Accept: application/json",
"X-Requested-With: XMLHttpRequest",
));
$output=curl_exec($ch);
curl_close($ch);
}
echo soldipubblici();
?>
$curl_parameters = array(
'codicecomparto' => trim($comparto),
'codiceente' => trim($ente),
);