我的Javascript代码如下:
function on(logged_user) {
alert(logged_user);
$.ajax({
url: "update_stats.php",
type: "POST",
data: logged_user
});
}
update_stats.php包含
<?php
$logged_user = $_POST["logged_user"];
?>
但是我可以看到$ logged_user只是一个空字符串(我正在将其插入数据库表中)
答案 0 :(得分:1)
您用于$.ajax
调用的数据参数格式不正确。来自manual:
data选项可以包含以下形式的查询字符串 key1 = value1&key2 = value2,或者是{key1:'value1' key2:“ value2”}
您应该将该行更改为:
data: { logged_user : logged_user },
或
data: 'logged_user=' + logged_user,
答案 1 :(得分:0)
它不是javascript,而是一个jquery ajax,因此请包括一个jquery库。 并像这样更改您的功能
语法以传递诸如
之类的值data:'{“ key”:'+ value +',“ key”:“ value”}',
或
data =“ key =” +值
或
数据:JSON.stringify({键:值,键:值}),
function on(logged_user) {
var dataString = "logged_user=" + logged_user
$.ajax({
type: "POST",
url: "update_stats.php",
data: dataString,
cache: false,
success: function(result) {
alert(result)
}
})
}
答案 2 :(得分:0)
只需尝试:
function on(logged_user) {
alert(logged_user);
$.ajax({
type : 'POST',
url : update_stats.php,
data : logged_user,
dataType : 'json',
encode : true
});
}
答案 3 :(得分:0)
您需要以键-值格式传递数据,才能通过php中的$ _POST,$ _ GET和$ _REQUEST数组变量进行访问。
data: {'logged_user' : data: logged_user}
您可以访问原始输入(例如JSON数据或文本数据),而这些输入不是键值格式,则可以使用file_get_contents(“ php:// input”)来访问数据。