将数据传递给json/php web服务
我正在尝试使用JQuery将一些数据传递给web服务。下面是一个简单的客户端:将数据传递给json/php web服务,php,javascript,jquery,ajax,web-services,Php,Javascript,Jquery,Ajax,Web Services,我正在尝试使用JQuery将一些数据传递给web服务。下面是一个简单的客户端: <script type="text/javascript"> $(function () { $.ajax({ type: "POST", url: "webservices/gammeList.php?lang=fr", contentType: "application/json; charset=utf
<script type="text/javascript">
$(function () {
$.ajax({
type: "POST",
url: "webservices/gammeList.php?lang=fr",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: onSuccess,
error: onError
});
});
function onError(result) {
alert("error");
}
function onSuccess(result){
alert(JSON.stringify(result));
}
</script>
我总是从web服务中得到“en”。因此,在这里,我应该使用相同的方法$\u GET['lang']
访问输入数据吗?我做错了什么
编辑:
我在
$\u POST['lang']
中更改了$\u GET['lang']
,但仍然不起作用。因此,请使用服务器端$\u POST
,而不是$\u GET
:
$_POST['lang']
因此,请使用服务器端的
$\u POST
,而不是$\u GET
:
$_POST['lang']
您可以使用服务器端$\u请求,该请求将同时适用于POST和GET方法:
$_REQUEST['lang']
您可以使用服务器端$\u请求,该请求将同时适用于POST和GET方法:
$_REQUEST['lang']
您应该将
array
传递给json\u encode函数
<?php
// Also you are using post method in ajax so use $_POST or $_REQUEST here
if (isset($_REQUEST['lang']) && !empty($_REQUEST['lang'])) {
$lang = $_REQUEST['lang'];
} else {
$lang = "en";
}
echo (json_encode(array($lang)));// here passing array to json_encode
?>
您应该将数组
传递给json\u encode函数
like
<?php
// Also you are using post method in ajax so use $_POST or $_REQUEST here
if (isset($_REQUEST['lang']) && !empty($_REQUEST['lang'])) {
$lang = $_REQUEST['lang'];
} else {
$lang = "en";
}
echo (json_encode(array($lang)));// here passing array to json_encode
?>
您使用的是$\u GET[“Key”]
,这是不正确的,因为您在POST变量中传递数据
您可以使用$\u请求[“键”]
或$\u POST[“key”]
检索发送到PHP脚本的数据
要了解更多关于这些的信息,请参考下面的链接
您使用的是$\u GET[“Key”]
,这是不正确的,因为您在POST变量中传递数据
您可以使用$\u请求[“键”]
或$\u POST[“key”]
检索发送到PHP脚本的数据
要了解更多关于这些的信息,请参考下面的链接
在$\u POST['lang']
中更改$\u GET['lang']
后,它仍然不起作用。我删除了以下行:
contentType:“应用程序/json;字符集=utf-8”
然后使用默认值'application/x-www-form-urlencoded;charset=UTF-8'
它工作了。在$\u-POST['lang']
中更改$\u-GET['lang']
后,它仍然不工作。我删除了以下行:
contentType:“应用程序/json;字符集=utf-8”
然后使用默认值'application/x-www-form-urlencoded;charset=UTF-8'
它成功了。我很困惑。如果我使用$\u REQUEST['lang']
它可以正常工作。但是与$\u POST['lang']
一样的行为..我感到困惑。如果我使用$\u REQUEST['lang']
它可以正常工作。但是使用$\u POST['lang']
仍然有相同的行为。。
$lang = $_POST["lang"];