创建用户ID列表的最佳实践
本文关键字:最佳 列表 用户 ID 创建 | 更新日期: 2023-09-27 18:27:27
我有一个数据库结构如下:
UserID (Primary Key)
Username
FirstName
SecondName
Email
我计划允许用户查询这个数据库并添加其他用户,这样就可以运行算法来选择所有这些用户的空闲时间,并返回可用于会议的时间。
因此,首先,我需要建立一个用户列表。这样做的最佳做法是什么?我假设每次找到用户时我都会创建一个cookie,并将其添加到客户端会话中?我该怎么做?
到目前为止,我的代码如下:
<script type="text/javascript">
$(function(){
$('#username').autocomplete({source:'getProducts'});
});
</script>
@{
if (IsPost) {
var db = Database.Open("mPlan");
var term = Request.Form["username"];
var sql = "SELECT * from Users where Username = @0 OR FirstName = @0 OR SecondName = @0"; //this is not very good
var result = db.Query(sql, term);
HttpCookie cookie = Request.Cookies.Get("MPUsersToMeet");
if(cookie == null) {
//assuming I need to create a new cookie
cookie = new HttpCookie("MPUsersToMeet");
} else {
//cookie.Add();?
}
}
}
<form id="form" name="form" method="post" action="">
<h1>Organize your meeting!</h1>
<p>Please give us the details of your meeting.</p>
<label>Who do you want to add to your meeting?
<span class="small">Add your first name, separate by commas.</span>
</label>
<label for="username">Enter name : </label>
<input type="text" name="username" id="username" />
<button type="submit">Add</button>
<div class="spacer"></div>
</form>
这里的最佳做法是什么?我需要查询数据库并在客户端存储用户列表,然后在屏幕上呈现这些用户的详细信息。
您必须决定是在服务器端还是在客户端构建用户id列表。
如果它是在服务器端构建的,那么每个用户id都必须发布到服务器。对于此解决方案,必须为每个添加的用户重新加载页面。我本可以通过使用一个带有隐藏用户ID列表的html表单标记来解决这个问题。
如果您采用客户端方法并使用javascript实现这一点,则可以构建用户id列表,并且在添加所有用户后,可以将其发布到服务器。在Javascript中,您可以使用数组来存储多个用户,因此不需要使用cookie。当选择了所有用户时,可以通过AJAX请求或普通POST将数组发送到服务器。