mysqli_query没有按预期工作

时间:2015-06-01 18:23:17

标签: php mysql mysqli

我有php:

$con=mysqli_connect("127.0.0.1","foo","bar","quaz");
if($con){
    $sql = "INSERT INTO `virtual_users` (`domain_id`, `password` , `email`) 
    VALUES ('2', ENCRYPT('".$password."', CONCAT('\$6\$', SUBSTRING(SHA(RAND()), -16))), '".$user."@".$domain."');";

    $query = mysqli_query($con, $sql);

    if(!$query){
        echo $sql;
    }else{
        echo "Success adding new email user!";
    }
}

出于某种原因,当我运行此查询时,它始终返回$sql这意味着连接正常,但查询不是。

当我在mysql数据库上直接运行$sql的回显时,它运行得非常好!我不知道出了什么问题!有什么想法吗?

1 个答案:

答案 0 :(得分:2)

那是因为您应该输出失败的原因,而不是导致失败的查询:

$result = mysqli_query($con, $sql) or die(mysqli_error($con));
                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^

查询成功的确有 ONE 方式,并且几乎有无数种方法可以使其失败。只是拥有“有效”的SQL意味着什么。