使用Ajax和JQuery从PHP文件获取数据 - php

我试图使用成功函数从我的php文件中获取数据(数据)

当我使用console.log(data)我得到;正确/错误/存在
但是我不能做一个if声明,如果我这样做的话会显得很机警!

这是我的js文件

function ajaxCall(username, email, password){

$.ajax({
    type: 'POST',
    url: '../register.php',
    data:   {
        'username' : username,
        'email' : email,
        'password' : password,
    },
    success: function(data) {
     if(data === "exists")
     alert("user exists");
    }
});

}

这是我的.php文件

<?php

$servername = "#";
$username = "#";
$password = "#";
$dbname = "#";

$regusername = $_POST['username']; 
$email = $_POST['email']; 
$regpassword = $_POST['password'];   

$mysqli = new mysqli($servername, $username, $password, $dbname);
$selectQuery = "SELECT username FROM users WHERE username = '$regusername'";
$select = $mysqli->query($selectQuery);
// var_dump($select->num_rows);

if( $select->num_rows == 0) {
    $insertQuery = "INSERT INTO users (username, password, email) VALUES ('$regusername','$regpassword','$email');";
    $insert = $mysqli->query($insertQuery);

        if( $insert == true) {
            echo "true";
        }else {
            echo "false";
        }
}else {
    echo "exists";
}

?>

参考方案

使用结构正确的数据格式,例如json:

的PHP:

$data=['exists'=>false];
if( $select->num_rows == 0) {
    $insertQuery = "INSERT INTO users (username, password, email) VALUES ('$regusername','$regpassword','$email');";
    $data['inserted'] = (bool) $mysqli->query($insertQuery);
}else {
    $data['exists']=true;
}
header('Content-Type: application/json');
echo json_encode($data);
die();

JS

$.ajax({
    type: 'POST',
    url: '../register.php',
    data:   {
        'username' : username,
        'email' : email,
        'password' : password,
    },
    success: function(data) {
       if(data.exists){
           alert("user exists");
       }elseif(data.inserted){
           alert("inserted");
       }else{
           alert("did not insert");
       }
});

PHP:将数组值加在一起 - php

我相信这比标题听起来要难一些,但我可能完全错了。我有一个像这样的数组:[["londrina",15],["cascavel",34],["londrina",23],['tiradentes',34],['tiradentes',21]] 我希望能够采用通用…

PHP JQuery复选框 - php

我有以下片段。 var myData = { video: $("input[name='video[]']:checked").serialize(), sinopse: $("#sinopse").val(), dia: $("#dia").val(), quem: $(&#…

PHP strtotime困境 - php

有人可以解释为什么这在我的服务器上输出为true吗?date_default_timezone_set('Europe/Bucharest'); var_dump( strtotime('29.03.2015 03:00', time()) === strtotime('29.03.2015 04:00�…

PHP-全局变量的性能和内存问题 - php

假设情况:我在php中运行一个复杂的站点,并且我使用了很多全局变量。我可以将变量存储在现有的全局范围内,例如$_REQUEST['userInfo'],$_REQUEST['foo']和$_REQUEST['bar']等,然后将许多不同的内容放入请求范围内(这将是适当的用法,因为这些数据指的是要求自…

如何从php中获取datatables jQuery插件的json数据 - php

我是PHP的新手,正在尝试使用Datatables jQuery插件。我知道我必须从.php文件中获取数据,然后在数据表中使用它,但是我似乎无法通过ajax将其传递给数据表。我设法从数据库中获取数据,并对其进行json编码,但是后来我不知道如何在我的index.php文件中调用它,并在其中显示它。我究竟做错了什么?这是我的代码:HTML(已编辑): <…