我已经创建了一个"激活"我的网站系统。有一个名为" active"在我的数据库中,默认情况下它的值是字符串" no"如果我想激活任何用户的帐户,我会将有效值更改为"是"一切都工作正常,直到我开始活动几个帐户。激活一个帐户(管理员帐户)后,我回显了活动行的值,看看是否一切正常,它打印了#34;是"但是,当我尝试使用未激活的帐户登录并回显活动行的值时,他们也返回"是"但是,当我检查数据库时,它会说" no"当我没有激活任何帐户时(也就是说,如果我不更改任何帐户的有效值),所有帐户都会返回" no"但是当我尝试激活一个/多个帐户时,所有这些帐户都返回"是"我很困惑。
用于创建列的代码:
ALTER TABLE users
ADD active varchar(3) DEFAULT 'no'
注意:我通过点击其内容并进行编辑来更改活动的值。
EDIT1:
$res= mysql_query("SELECT active FROM users");
$row= mysql_result($res, 0);
echo $row;
如果我编辑一个/多个活动值,则所有活动值都返回相同的值。
EDIT2:
更新声明:
UPDATE `db_name`.`users` SET `active` = 'yes' WHERE `users`.`id` =3;
答案 0 :(得分:0)
这是问题所在:
mysql_query("SELECT active FROM users");
它也应该是:
mysql_query("SELECT active FROM users WHERE id = 3");
上一个查询只选择它在表中找到的第一个用户的active值(始终只有表中的第一个用户)。 如果您想知道特定用户的活动值,您需要传递ID并根据该值进行选择。