怎样防止新增后刷新重复插入记录
2008-03-14 22:48
190 查看
我们在新增后,如果页面没有转走,手动刷新或重复点击按钮,都可能导致重复插入记录到数据库,特别是在网速很慢时,点了新增后没反映,多数人都会再点一次,或刷新页面,结果就插入了多条相同的记录.
以下代码可以解决以上问题,以前我在写asp时也是这样实现的,基本上转成.net后,还是一样的代码.
首先我们需要在aspx的form中加入一个隐藏表单:
<input type=hidden name=formid value='<%=DateTime.Now %>' />
然后在aspx.cs中的新增按钮的处理代码之前加入以下代码:
protected void btn_Add_Click(object sender, EventArgs e)
...{
//以下代码可以保证新增后右键刷新将不会重复插入记录.
string formid = HttpContext.Current.Request["formid"];
if (formid == null)
...{
Response.Write("提示:表单没有指定formID");
Response.End();
}
else
...{
if (Session["formID"] == null)
...{
Session["formID"] = formid;
}
else
...{
if (Session["formID"].ToString() == formid.ToString())
...{
Response.Write("<font color=red>:" + formid + "此表单已经提交到服务器,请不要重复提交或刷新。</font><a href="javascript:window.location=window.location">返回表单!</a>");
Response.End();
}
else
...{
Session["formID"] = formid;
}
}
}
//----------------以下写新增插入代码
}
以下代码可以解决以上问题,以前我在写asp时也是这样实现的,基本上转成.net后,还是一样的代码.
首先我们需要在aspx的form中加入一个隐藏表单:
<input type=hidden name=formid value='<%=DateTime.Now %>' />
然后在aspx.cs中的新增按钮的处理代码之前加入以下代码:
protected void btn_Add_Click(object sender, EventArgs e)
...{
//以下代码可以保证新增后右键刷新将不会重复插入记录.
string formid = HttpContext.Current.Request["formid"];
if (formid == null)
...{
Response.Write("提示:表单没有指定formID");
Response.End();
}
else
...{
if (Session["formID"] == null)
...{
Session["formID"] = formid;
}
else
...{
if (Session["formID"].ToString() == formid.ToString())
...{
Response.Write("<font color=red>:" + formid + "此表单已经提交到服务器,请不要重复提交或刷新。</font><a href="javascript:window.location=window.location">返回表单!</a>");
Response.End();
}
else
...{
Session["formID"] = formid;
}
}
}
//----------------以下写新增插入代码
}
相关文章推荐
- ASP页面防止刷新,防重复插入
- mysql教程 sql 防止重复插入相同的记录实例
- 防止页面重复提交、刷新、后退与数据库中的重复记录
- MYSQL中防止插入重复记录的解决方案
- 怎样防止添加记录后再刷新又添加了记录
- 怎样防止浏览器刷新重复提交数据?
- 怎样防止浏览器刷新重复提交数据?
- 关于Fragment切换防止重复刷新页面,记录而已
- mysql insert if not exists防止插入重复记录的方法
- MySQL防止重复插入记录SQL
- mysql insert if not exists防止插入重复记录的方法(转)
- Java防止重复数据多次调用接口导致数据库插入重复记录
- 怎样防止浏览器刷新重复提交数据?
- mysql防止重复插入记录方法总结
- 怎样防止浏览器刷新重复提交数据?
- 防止mysql重复插入记录的方法
- mysql防止重复插入相同记录 insert if not exists
- MYSQL中防止插入重复记录的解决方案(无重复值更新)
- 怎样防止浏览器刷新重复提交数据
- mysql sql 防止重复插入相同的记录实例