php - JQuery Post 到 PHP 插入数据,但 json 响应为 null

标签 php jquery mysql json http-post

我正在使用 AngularJS 构建一个简单的注册表单,并使用 JQuery 的 $.post() 将数据发送到 PHP 页面。当我发送数据时,它会正确插入到数据库中。但是,我正在记录的返回 json 将我的数据字段显示为 null。

控制台:

{"status":"success","email":null,"id":null,"sessionId":null}

Javascript:

$.post("admin/addUser.php", {
    email: form.email,
    password: form.password
}).done(function(data){
    console.log(data);
});

PHP:

$email = mysql_real_escape_string($_POST["email"]);
$password = md5(mysql_real_escape_string($_POST["password"]));
$sessionId = md5(uniqid(microtime()) . $_SERVER['REMOTE_ADDR'] . $_SERVER['HTTP_USER_AGENT']);

//Add this user to the database
$sql = mysql_query("INSERT INTO users (email, password, sessionId) VALUES ('".$email."', '".$password."', '".$sessionId."')");

if ($sql){
    //Now find the user we just added
    $getUser = mysql_query("SELECT * FROM users WHERE email = '".$email."' AND sessionId = '".$sessionId."'");
    if ($getUser){
        $row = mysql_fetch_array($getUser);
        $user = array(
            'status' => 'success',
            'email' => $row['email'],
            'id' => $row['id'],
            'sessionId' => $row['sessionId']
            );
            echo json_encode($user);
    }else{
        $user = array(
            'error' => mysql_error()
        );
        echo json_encode($user);
    }
}else{
    $user = array(
        'error' => mysql_error()
    );
    echo json_encode($user);
}

最佳答案

您确定这里只有一条记录吗

$getUser = mysql_query("SELECT * FROM users WHERE email = '".$email."' AND sessionId = '".$sessionId."'");

尝试转储 $row 并查看响应。顺便说一句,我建议您添加限制

$getUser = mysql_query("SELECT * FROM users WHERE email = '".$email."' AND sessionId = '".$sessionId."' LIMIT 1");

关于php - JQuery Post 到 PHP 插入数据,但 json 响应为 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24574083/

相关文章:

php - MySQL插入语句后获取主键

php - 从数据库 Codeigniter PHP 中的 cookie 获取值

php - 使用 mailChimp API 创建事件时针对特定群体

jquery - IE8在向div插入数据时强制兼容模式

javascript - 动态创建的 DOM 元素上的 jQuery 事件绑定(bind)

jquery - Less\Sass\JQuery 中带有 HTML 参数的 CSS 类?

php - 如何将url参数写入.htaccess

php - Laravel 5.1 工作和听众

javascript - 使用 NodeJS 忽略 MySQL UPDATE 中的未定义数据

mysql - MS Access 组合框未获取行源值