无法在 PHP 中执行 SQL 查询并返回值


Unable To Execute SQL Query In PHP & Return A Value

$username = $_POST["txtUsername"];  
$query = "SELECT Password FROM `tblusers` WHERE Username='admin'";
mysqli_query($connection, $query);

我不完全知道如何返回此查询的结果,感谢任何帮助,但请记住我是相当新的,所以我可能很难理解。

由于您是新手,我鼓励使用 PDO(PHP 数据对象(。 主要原因是保护您的网站免受SQL注入攻击。

function getPassword() {
    try {
        $db = new PDO("mysql:host=192.168.0.1;charset=utf8", "username", "password");
        $username = $_POST["txtUsername"];
        $cmd = $db->prepare("
            SELECT Password FROM `tblusers` WHERE Username = :username;
        ");
        $cmd->bindParam(':username', $username, PDO::PARAM_STR);
        $cmd->execute();
        $result = $cmd->fetch();
        return $result[0];
    } catch (Exception $e) { echo $e->getMessage(); return; }
}
$password = getPassword();

基本示例

// CONNECT TO THE DATABASE
    $DB_NAME = 'DATABASE_NAME';
    $DB_HOST = 'DATABASE_HOST';
    $DB_USER = 'DATABASE_USER';
    $DB_PASS = 'DATABASE_PASSWORD';
    $mysqli = new mysqli($DB_HOST, $DB_USER, $DB_PASS, $DB_NAME);
    if (mysqli_connect_errno()) {
        printf("Connect failed: %s'n", mysqli_connect_error());
        exit();
    }
// A QUICK QUERY ON A FAKE USER TABLE
    $query = "SELECT * FROM `users` WHERE `status`='bonkers'";
    $result = $mysqli->query($query) or die($mysqli->error.__LINE__);
// GOING THROUGH THE DATA
    if($result->num_rows > 0) {
        while($row = $result->fetch_assoc()) {
            echo stripslashes($row['username']);    
        }
    }
    else {
        echo 'NO RESULTS';  
    }
// CLOSE CONNECTION
    mysqli_close($mysqli);

检查这个: http://www.w3schools.com/php/func_mysqli_fetch_array.asp

mysqli_query返回结果集,请使用myqli_fetch_array获取实际的查询结果。

mysqli_query返回mysqli_result对象以成功SELECT, SHOW, DESCRIBE or EXPLAIN查询,因此您必须创建一个变量来保存该对象。

注意:失败时将返回FALSE

阅读更多 : mysqli_query - 返回值