【发布时间】:2014-03-02 03:14:54
【问题描述】:
所以我学到了很多关于 PHP 的知识,并且我从基础开始,即使其中一些已被弃用。现在我已经掌握了知识,我正在重写我为使用 PDO 和类所做的一切。现在我从来没有使用过,但我正在慢慢地(慢慢地,慢慢地)理解并理解它。我想问的是,如果我这样做是对的,如果不是,我哪里错了?
我基本上有这个功能:
function user_exists($username) {
$username = sanitize($username);
$query = mysql_query("SELECT COUNT(`user_id`) FROM `users` WHERE `username` = '$username'");
return (mysql_result($query, 0) == 1) ? true : false;
}
我想把它变成一个类:
class user {
function exists($username) {
$username = $username;
$query = $db->query("SELECT COUNT(`user_id`) FROM `users` WHERE `username` = '$username'");
$results = $query->fetchAll(PDO::FETCH_ASSOC);
}
}
我是否走在正确的轨道上,我是否应该将该函数(方法)中的变量设为“exists”方法的私有变量?
我打算创建一个“用户”类,其中包含诸如存在、禁止、管理等方法。我认为这是我应该做的?
如果有人回答这个问题,谢谢。
【问题讨论】:
-
$username = $username;是特别是错误的。首先它没有效果,其次它的命名不好。也许您的意思是$this->name = $name;,其中name是一个类属性。 -
如果我错了,请纠正我,但类中的“属性”只是意味着变量对吗?就像“方法”意味着功能?我在我的函数中拥有的是,当用户登录时,它会检查该用户名是否存在,因此它将其解析为要在查询中使用的函数。那你说的对吗?另外,如果你能回答; pdo 查询安全吗?只有insert等容易出现sql注入,应该做好准备吧?