0

在我的一张表中,我有一列以逗号分隔的已购买该商品的用户列表。图片

我如何阅读列表并运行 php 脚本来查找登录的用户(存储在会话中)是否在该列表中。例如,我如何查看登录用户(MTNOfficial)是否在列表中。我认为它是一个带有 mysql CONCAT 或 FIELD_IN_SET 之类的 php if 语句。

谢谢

4

2 回答 2

2

使用FIND_IN_SET()查找包含您的用户的记录

select *
from your_table
where find_in_set('MTNOfficial', usersBought) > 0
于 2013-06-21T17:28:47.850 回答
0

获取逗号分隔的列表,然后尝试使用 php 函数explode() 来获取可以循环的数组。

http://php.net/manual/en/function.explode.php

$target = "MTNOfficial";
$query = "select usersBought from table_name";
$result = mysql_query($query);
while ($row = mysql_fetch_array($result)) {
    $users = explode("," $row['usersBought']);
    // may want to trim() here
    for ($i = 0; $i < count($users); i++) {
        if ($users[i] == $target) {
            //we found him!
        }
    }
}
于 2013-06-21T17:31:30.983 回答