我正在使用PHP,AS3和mysql.
我有一个网站.一个flash(as3)网站.flash网站通过php将成员信息存储在mysql数据库中.在"members"表中,我将"id"作为主键,将"username"作为唯一字段.
现在我的情况是:当flash想要显示会员的个人资料时.我的问题:
Flash应该将成员"ID"或"用户名"传递给php来处理mysql查询吗?
通过"id"或"用户名"有什么不同吗?
哪一个更安全?
你推荐哪一个?
我想在安全性和性能方面优化我的网站.
主键始终是识别数据库行的最安全方法.例如,您可能稍后改变主意并允许重复的用户名.
根据您的ActionScript与PHP通信的方式,如果您在请求中发送整数ID而不是用户名,则可能还需要发送更少的字节.
1)无论如何都不应该做它应该做的事情.
2)ID可能更短,查找速度更快.该ID提供了有关您的系统的更多信息; 如果您知道某个站点根本使用了序列ID,并且您知道它们中的哪一个,那就非常了解所有这些ID,而知道一个用户名并不会告诉您任何其他用户的用户名.另一方面,用户名更能揭示用户的心理,并可能构成密码提示.
3)如第2项所述,两者都有极度边际的垮台.
4)我会使用ID.