PHP脚本使用JQuery POST返回String中的特殊字符

时间:2017-04-23 10:15:39

标签: javascript php jquery html

我在这段代码中遇到了一个问题:

    var dataForm = $(this).serialize(), 
        _user = recognizeUser(this);

    $.post(_user, dataForm, function(data, textStatus){

        alert(data);
        if(data == "true") {
            alert("I'm in");
            location.href = URL;
        }

        return false;
    });

因此,PHP脚本返回正确的数据,但在" true"之前有空格。 ("警报(数据)"显示" true"如下图所示。)

Incorrect text output

PHP代码是:

$result = $conn->query($sql);

if ($result->num_rows > 0) {
    $result = $result->fetch_assoc();


    $_SESSION['username'] = $result['Username'];
    $_SESSION['password'] = $result['Password'];

    echo "true";
} else {
    echo "No user found";
}

由于

1 个答案:

答案 0 :(得分:0)

问题肯定在你的PHP脚本中,在你发布的片段之前(因为它在字符串true之前的空格/制表符之前/之前);

在打开<?php代码之前,它可能是一个空格。

如果是空格字符(例如空格和制表符), 你可以简单地通过调用JS字符串方法trim()来克服它,它将从字符串的开头/结尾删除所有那些空格字符(例如空格和制表符):

data = data.trim();
if(data == "true") {
    alert("I'm in");
    location.href = URL;
}