题目说得有点模糊,一个用户在注册一个网站后,会出现网页引导提示,比如hover一个“撰写问题”时,出现一个tips:介绍该“撰写问题”的注意事项,比如hover一个“踩”按钮时,出现一个tips:介绍该“踩”按钮的注意事项。在每一个tips下面都要有一个“不再显示该提示”的按钮,即永久隐藏该提示,但,这个"永久隐藏该提示"应该怎样保存?我能想到的:
- 保存在数据库中,在每一个user表中新增一个字段,用于保存“is_click_tip1,is_click_tip2,,is_click_tip3,,is_click_tip4......”serialize后存入数据库,读取时再unserialize出来,这么做的弊端就是,每次生成页面都要unserialize一次,如果网页想针对未注册的用户生成提示,则无法保存。
- 存入本地,用cookie保存,但是用户清除cookie后又得显示出各种新手引导提示,用evercookie?但转移一次电脑后,用户用其他电脑登陆又得显示这个新手引导提示,感觉还是不够人性化。
不知道还有没有其他好的办法?
回复内容:
题目说得有点模糊,一个用户在注册一个网站后,会出现网页引导提示,比如hover一个“撰写问题”时,出现一个tips:介绍该“撰写问题”的注意事项,比如hover一个“踩”按钮时,出现一个tips:介绍该“踩”按钮的注意事项。在每一个tips下面都要有一个“不再显示该提示”的按钮,即永久隐藏该提示,但,这个"永久隐藏该提示"应该怎样保存?我能想到的:
- 保存在数据库中,在每一个user表中新增一个字段,用于保存“is_click_tip1,is_click_tip2,,is_click_tip3,,is_click_tip4......”serialize后存入数据库,读取时再unserialize出来,这么做的弊端就是,每次生成页面都要unserialize一次,如果网页想针对未注册的用户生成提示,则无法保存。
- 存入本地,用cookie保存,但是用户清除cookie后又得显示出各种新手引导提示,用evercookie?但转移一次电脑后,用户用其他电脑登陆又得显示这个新手引导提示,感觉还是不够人性化。
不知道还有没有其他好的办法?
cookie,不要把所有问题都让服务器、数据库来抗。
每次都要查询,时间久了会悲剧的。
cookie,或者html5开始支持的localStorage。
参考资料:
- localStorage - MDN文档
- web存储 - w3school中文
用Redis这种高性能的nosql来搭建一个用户的动态配置系统,不仅让开发可以很容易地新建一个用户配置项,同时保证性能。
Stellungnahme:Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn