1

好的,这是我的表结构,
名称:奖励
结构:title、point、hasimg、imgurl

我想做的是,当用户的积分等于/超过特定数量时,获取标题和 imgurl(如果 hasimg=1)。

这是一个例子。奖励表中填充了这些值(根据上述顺序):
第一行:ace , 1000 , 1 , http://imglink.com
第二行:elite , 2000 , 0 , none
第三行: pro , 3000 , 1 , http://imglink.com

一个用户有3258点,也就是3000 多,所以他会有“pro”的称号。那么我如何使用mysql查询来选择“pro”和imgurl(因为hasimg = 1)并将它们存储在php变量中?

如果一个用户有2450点,比 2000 多,所以他会有标题“2000”,但是,它只得到标题而不得到 imgurl,因为 hasimg=0。

以及如何确保查询选择 1000 和 2000 因为 3000 比它们多?

4

1 回答 1

0

您基本上需要表中小于(或等于)userPoints 的最高点记录您可以使用如下的 sql 查询

select * from rewards where point <= 2300 order by point desc limit 1

获得该行后,您可以检查是否设置了图像位并基于该显示图像。

于 2012-06-05T09:52:02.310 回答