使用$ .ajax方法将变量从javascript传递到php,以便在数据库mySQL中发布

时间:2014-06-15 22:44:36

标签: javascript php jquery mysql ajax

我尝试从js文件到php调用POST。我需要这个在mySQL数据库中添加变量。

有我的简单文件:

1°PHP文件,用于发送呼叫

<html>

    <head>
        <script src="../js/jquery.js"></script>
        <script src="../js/ajax-call.js"></script>

    </head>

    <body></body>

</html>

文件js

$(document).ready(function () {

    $.ajax({
        url: 'http://localhost/json/html/j.php',

        contentType: 'application/json',
        dataType: 'json',
        type: 'post',
        data: {
            "variable":"foo"
        },

        success: function () {
            console.log("ok");

        },
        error: function () {
            console.log("error");
        }
    });
});

接收者的PHP代码:

<?php
    function connect(){
        $connect = mysql_connect('127.0.0.1','root','') or die("ERROR");
        $connect2Database = mysql_select_db('ajax', $connect);
        return $connect;
    }

    if(isset($_POST)){
        if($connect = connect()){
            $query = "INSERT INTO `table`(`name`) VALUES ('".$_POST['variable']."');";
            $completeQuery = mysql_query($query, $connect);
        }
    }
?>

变量$ _POST ['variable']未定义。我尝试使用一个简单的字符串来清理$ _POST ['variable']并将其添加到数据库中。

1 个答案:

答案 0 :(得分:0)

contentType设置为'application/json'时,会将原始JSON字符串发送到服务器。相反,您应该删除该部分并定期执行POST

$.ajax({
    url: 'http://localhost/json/html/j.php',
    type: 'post',
    data: {
        "variable":"foo"
    },

    success: function () {
        console.log("ok");

    },
    error: function () {
        console.log("error");
    }
});