在一个表中,我有一个字段存储允许查看帖子的用户。我有类似93849038,39480398逗号分隔用户的地方。
所以这就是我想要做的:
$user = logged in user; example: 93849038.
这就是我的查询的样子:
$sql = "SELECT note FROM notes_are WHERE user_allowed = '$user' ORDER
BY id DESC LIMIT 0, 3";
使用这样的结构,我无法担任该职位。
在一个表中,我有一个字段存储允许查看帖子的用户。我有类似93849038,39480398逗号分隔用户的地方。
所以这就是我想要做的:
$user = logged in user; example: 93849038.
这就是我的查询的样子:
$sql = "SELECT note FROM notes_are WHERE user_allowed = '$user' ORDER
BY id DESC LIMIT 0, 3";
使用这样的结构,我无法担任该职位。
这不是推荐的做法,因为它会强制数据库引擎检查表的所有行。最好创建一个权限表,其中每个有权访问笔记的用户都单独列出(确保也索引用户列)。
如果你真的必须,你可以使用LOCATE字符串函数(假设 MySQL):http ://dev.mysql.com/doc/refman/5.5/en/string-functions.html#function_locate
当然,LOCATE也有问题,因为它不关心逗号分隔的东西,所以“更好”的方法可能是REGEXP:http ://dev.mysql.com/doc/refman/5.5/en/regexp.html#operator_regexp