php pdo在null上调用成员函数query()

时间:2016-10-13 20:25:59

标签: php pdo login system

// db.php

$db = array();

$db['host'] = '127.0.0.1';
$db['login'] = 'root';
$db['pass'] = '';
$db['name'] = 'edziennik';

$db_conn = new PDO('mysql:host='.$db['host'].';dbname='.$db['name'].';charset=utf8mb4', $db['login'], $db['pass']);

login_system.php

<?php

require_once('cfg/db.php');

function validate_data($l, $p)
{
    $query = "SELECT * FROM e_users WHERE login='"+$l+"' AND password='"+$p+"'";
    $stmt = $db_conn->query($query);
    $row_count = $stmt->rowCount();
    if($row_count===1)
        return true;
    else
        return false;
    return false;
}

错误:在null上调用成员函数query() 添加全局前缀并没有帮助。 我花了很多时间修理它,所以我问你。

1 个答案:

答案 0 :(得分:0)

$db_conn范围内不存在

validate_data。将其作为参数传递。

<?php

require_once('cfg/db.php');

function validate_data($db_conn, $l, $p)
{
    $query = "SELECT * FROM e_users WHERE login='".$l."' AND password='".$p."'";
    $stmt = $db_conn->query($query);
    $row_count = $stmt->rowCount();
    if($row_count===1)
        return true;
    else
        return false;
    return false;
}

当你打电话给它时,传递连接。

$check = validate_data($db_conn, $whateverLIs, $whateverPIs);

编辑: - @Bamar所记录的固定concat运算符。