请教一思路

mzcih 2003-10-15 03:48:54
我在做一个文件共享程序,可以指定该记录只可以被某个用户看。

  编写工具:ASP+VBScript+ACCESS2000

  共享表
  
  编号  发表人  内容  可查看人

  1 小明  大家好 小红|小白|小黑

  
  我用Spilt把“可查看人”分隔开,然后检测“当前用户”与“可查看人”是否相同,
有就可以看,否则不行。

  问题来了,想增加个功能,就是从数据库中统计有多少条自己可以看的记录,显示出来,比如有10条,当我看过其中一条就减去这条记录。比如我看过其中2条就剩下8条。

  我自己有一个思路,就是“可查看人”有3个就增加三条记录(分别指向三个用户),然后再增加一个“标识”字段来标判断(是那个用户的)。但有100个人不是要增加100条记录了。这样很不科学!

  请高手赐教!!!
...全文
49 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
mzcih 2003-10-17
  • 打赏
  • 举报
回复
问题解决了,谢谢大家的帮助结贴。
zykj_2000 2003-10-17
  • 打赏
  • 举报
回复
用like试试吧
  • 打赏
  • 举报
回复
问题应该解决了吧
mzcih 2003-10-17
  • 打赏
  • 举报
回复
谢谢!马上试试.
wubaozhang 2003-10-16
  • 打赏
  • 举报
回复
我常用的是SELECT count(*)
FROM table WHERE instr(已查看人,'|"&username&"|')>0

试试看
mzcih 2003-10-16
  • 打赏
  • 举报
回复
我用大家的SQL

sql="select count(*) from table where 可查看人 like '%|"& username &'|% and 已查看人 not like %|'" & username &"'|%"



可查看人 已查看人
|cih|abc|

但居然搜索不到记录,奇怪!
eduxh 2003-10-15
  • 打赏
  • 举报
回复
大概是这么个意思,不过sql该下面那样写
sql="select count(*) from table where 可查看人 like '%|"& username &'|% and 已查看人not like %|'" & username &"'|%"
itcoco 2003-10-15
  • 打赏
  • 举报
回复
不知我是否理解楼上大家讨论的结果
就是在曾加一个字段 "已查看人",凡是可看人读过此记录就在已查看 字段中写入人名
这样可以用 sql="select count(*) from table where 可查看人 like"&username& and 已查看人not like &username&来统计自己还有几条记录未查看

学习中
1蓝天1 2003-10-15
  • 打赏
  • 举报
回复
up
eduxh 2003-10-15
  • 打赏
  • 举报
回复
同意楼上的。
wubaozhang 2003-10-15
  • 打赏
  • 举报
回复
是这样的,而且也可以满足功能

最好是用用户名,这样可以避免同名

但要注意不要重复加已查看人,还有就是已查格式应该是 “|人名|”,这样可以防止例如:黎明、黎明灰这样的重复

字符串要用“|”开头、结尾,这样在查人的时候就该不会出错了
eduxh 2003-10-15
  • 打赏
  • 举报
回复
恩,是这意思,这样大概是可以了的。
mzcih 2003-10-15
  • 打赏
  • 举报
回复
楼上的意思是增加一个字段来记录已查看的记录.

比如:

编号  发表人  内容  可查看人 已看人

1 小明  大家好 小红|小白|小黑

如果小黑看了则增加上去:此时:

编号  发表人  内容  可查看人 已看人

1 小明  大家好 小红|小白|小黑 小黑

wubaozhang 2003-10-15
  • 打赏
  • 举报
回复
可查看人设为 |小红|小白|小黑|
增加一个已查看人字段 格式同上


replace("可查看人","|小白|","|")删除
mzcih 2003-10-15
  • 打赏
  • 举报
回复
哦!我想是我表达得不清楚问题是:

想增加个功能,就是从数据库中统计有多少条自己可以看的记录,显示出来,比如有10条,当我看过其中一条就减去这条记录。比如我看过其中2条就剩下8条。

  我自己有一个思路,就是“可查看人”有3个就增加三条记录(分别指向三个用户),然后再增加一个“标识”字段来标判断(是那个用户的)。但有100个人不是要增加100条记录了。这样很不科学!
eduxh 2003-10-15
  • 打赏
  • 举报
回复
你可以在加个变量:已查看人,也像可查看人那样格式的。
sql语句就可以这样写了:select * from table where 可查看人 like %username% and 已查看人 not like %username%
我上面只是打个比方,你改改看好不好用。
angelheavens 2003-10-15
  • 打赏
  • 举报
回复
可查看人本身实行会员级别制,不同级别人能看到或不能看到一定的资料

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧