0
$.ajax({
    url: 'http://localhost/xampp/htdocs/ajax.php',

    contentType: 'application/json',
    type: 'post',
    data: {

//score 是一个新变量,count2 是一个整数变量,我想将它发送到数据库 "score":"count2" },

    success: function () {
        alert("ok");

    },
    error: function () {
       alert("error");
    }
});    

上面的代码提醒我“好的”。

function connect(){
    $connect = mysql_connect('localhost','root','') or die("ERROR");
    $connect2Database = mysql_select_db('fypdb', $connect);
    return $connect;
}

if(isset($_POST)){

    if($connect = connect()){

        $query = "INSERT INTO fypdbtable (score) VALUES ('".$_POST['score']."');";
        $completeQuery = mysql_query($query, $connect);
    }
}

我认为问题出在“插入”查询上,因为在 ajax.php 中提示我注意:未定义索引:第 14 行 C:\xampp\htdocs\xampp\htdocs\ajax.php 中的分数它是查询行

任何帮助将不胜感激

4

2 回答 2

1

这里的问题在于您的 ajax 代码。您正在使用 contentType: 'application/json',但您尝试使用 php 脚本访问参数$_POST,但 post 适用于表单编码的内容类型。因此,您可以从 ajax 调用中删除 contentType ,它将使用默认值,即
contentType:'application/x-www-form-urlencoded; charset=UTF-8'

编辑让你的ajax代码像这样:

$.ajax({
url: 'http://localhost/xampp/htdocs/ajax.php',
type: 'post',
data: {
    "score":"count2"
},

success: function () {
    alert("ok");

},
error: function () {
   alert("error");
}
});
于 2014-11-22T22:01:26.810 回答
0

“错误”消息告诉您, $_POST['score'] 未定义。但这只是一个警告。如果您想知道您的变量是否已设置,请使用 isset() 函数或关闭配置中的警告。

于 2014-11-22T21:41:19.870 回答