0

我想INSERT通过 ajax 运行查询。该查询需要来自 php 会话的值,但 js 请求没有看到该值。为什么会这样?我该怎么办 ?

下面的一些代码:

JS:

$('div#content').on( "submit" , "form" , function ( event ){
        event.preventDefault();
        var href        = "ajaxRequest.php" + $(this).attr("action");
        var method      = $(this).attr("method");
        var values      = $(this).serializeArray();

        $.ajax({
            url         : href,
            data        : values,
            type        : method,
            dataType    : "html",
            cache       : false,
            success     : function ( content ){
                alert( content );
            }
        });

    });

PHP:

public function addBoard( $params = null )
        {
            $ID_user            =   $_SESSION[ 'user_id' ];
            $board_model        =   $params[ 'board_model' ];

            $query = "INSERT INTO `".prefix."boards` (                      
                        `ID_user` ,
                        `board_model`
                        )
                    VALUES (
                        '$ID_user', '$board_model');";

            if( $this->SQL->dbquery( $query ) )
                echo 'Added';
            else
                echo 'Failed';
        }
4

3 回答 3

3

session_start();PHP页面顶部。

于 2013-04-08T11:14:43.160 回答
0

对于服务器而言,ajax 请求与常规页面请求没有什么不同。会话的行为方式与它在页面请求中的行为方式相同。

您需要做的就是在响应 ajax 请求的 php 文件中启动会话。

于 2013-04-08T11:22:52.020 回答
0

您可能需要在页面顶部开始会话。在这里,您似乎在 ajax 文件中定义了该函数但未调用。那么你有没有在ajax文件中调用那个函数

于 2013-04-08T11:28:17.740 回答