php中的json对象无法读取

我想将用户名和密码传递给php脚本并签入数据库.在客户端,我使用以下脚本制作一个json对象并将其发布到php文件.

var myobj = {};
myobj["usrname"]= $( "#customer option:selected" ).text();
myobj["usrpass"]= $("#psw").val();

var myjson = JSON.stringify(myobj);

$.ajax({
method: "POST",
url: "checkpass.php",
data: myjson
})
.done(function( msg ) {
    alert( msg );
});

在服务器端,当我在萤火虫中看到时,该帖子以

Parametersapplication/x-www-form-urlencodedDo not sort
{“usrname”:”XXXXXXX…
JSON

usrname
“XX”

usrpass
“justdoit”
Source
{“usrname”:”XXX”,”usrpass”:”justdoit”}

但是,当我运行php脚本检查查询时,它返回错误

$usrname = $_POST['usrname'];
$usrpass = $_POST['usrpass'];

$sql = "select count(*) from glusers where EmpName='$usrname' and EmpPass='$usrpass'";
$result = $conn->query($sql);

if($result >0){
$output = 'Success';
} else
{
$output = 'fail';
}

我已经尝试了所有帖子,但无法正常工作.

提前致谢.

问候,

解决方法:

回声并死掉该语句,以使ajax发生成功事件

Js File

 var myobj = {};

        myobj["usrname"] = 'myUsername';

        myobj["usrpass"] = 'myPassword';



        $.ajax({
            type: "post",
            url: "url",
            dataType: "json",
            data: {post_data: myobj},
            contentType: "application/x-www-form-urlencoded",
            success: function (responseData) {
                console.log(responseData);
            },
            error: function (errorThrown) {
                console.log(errorThrown);
            }
        });

PHP action File

           /** if we print post we will get the following array * */
//print_r($_Post);
//die()
//Array
//(
//    [post_data] => Array
//        (
//            [usrname] => myUsername
//            [usrpass] => myPassword
//        )
//
//)

if (isset($_Post['post_data'])) {
    $myPost = $_Post['post_data'];
    $usrname = $myPost['usrname'];
    $usrpass = $myPost['usrpass'];

    $sql = "select count(*) from glusers where EmpName='$usrname' and EmpPass='$usrpass'";
    $result = $conn->query($sql);
    $num_row = $result->num_rows;

    if ($num_row > 0) {
        $output = 'Success';
    } else {
        $output = 'fail';
    }
    echo json_encode($output);
    die();
}
上一篇:php-如何在m​​ysqli的更多表中添加一列?


下一篇:mysql-以特定顺序从数据库中获取数据