这是我第一次尝试PDO并仍在学习。我对在开发php系统中使用mysql或mysqli更为熟悉。
经过深入的搜索和搜索后,我似乎仍然无法理解如何使用PDO进行查询
在我的代码中,我在index.php中调用的函数中使用了mysqli
function getUsery(){
$ip = getIPAddress();
$query = mysqli_query("select userID from tblUsers where logged='1' AND ip='$ip'");
$row = mysqli_fetch_array($query);
$emp = $row['userID'];
$logged = $row['logged'];
$userlvl = $row['userLevel'];
$_SESSION['logged'] = $logged;
$_SESSION['userLevel'] = $userlvl;
return $emp;
}
我真的不知道如何使用带有'where'语句的PDO选择sql查询。我发现的大部分内容都是使用没有'where'语句的数组
如何选择已登录的用户ID和记录的IP等于计算机的IP地址的“ 1”,并返回结果并将其显示到index.php
答案 0 :(得分:0)
这是imo上有关PDO以及如何使用它的最佳指南之一: https://phpdelusions.net/pdo WHERE是查询的一部分,PDO中的查询与纯* sql查询没有太大区别,只是执行时会进行一些过滤。仔细阅读指南,您将能够执行所需的任何查询。
答案 1 :(得分:0)
PDO中有一条带有WHERE的SQL语句
$sql = "SELECT * FROM Users
WHERE userID = ?";
$result = $pdo->prepare($sql);
$result->execute([$id]);
答案 2 :(得分:0)
假设您知道如何使用PDO连接数据库,以下是如何使用PDO选择SQL。
$stmt = $db->prepare("select userID from tblUsers where logged = '1' AND ip = :ip");
$stmt->execute(array('ip' => $ip));
$listArray = $stmt->fetchAll();
请注意:ip
末尾的SELECT
。如果您不使用?
作为参数,则前缀:
是强制性的,其后的单词应与execute函数中的键相同。
编辑
如果上面的代码在函数内部而$db
在函数外部,则将$db
声明为函数内部的全局变量。