查看: 838|回复: 9
|
如何写一个水准的 register page.
[复制链接]
|
|
我发现通常的人都会design
form.asp 让 user 填资料。。。
user click submit, 通常会pass回form.asp 或 validate.asp.
利用 request.form 抓 value, store 进 database.
但我发现在 request.form 的 page, 一直 click refresh.
它就一直create 新的 user.
还是有别的方法??
如果我有错, 请指点。。 谢谢。。。 |
|
|
|
|
|
|
|
发表于 27-5-2006 02:06 AM
|
显示全部楼层
以前我试过整个网站从register到其它都只用一个.aspx 罢了。。 |
|
|
|
|
|
|
|
发表于 27-5-2006 02:10 AM
|
显示全部楼层
|
|
|
|
|
|
|
楼主 |
发表于 27-5-2006 03:36 AM
|
显示全部楼层
原帖由 jasonmun 于 27-5-2006 02:10 AM 发表
怎么会? 要按submit后,才将资料写入..
就比如说, 我按 submit 过后。。
会link去 register.asp
-------------------------------------
<%
contactPerson = request.form("txtContactPerson")
contactTel = request.form("txtContactTel")
email = request.form("txtEmail")
ProductIdea = request.form("txtProductIdea")
backGround = Request.Form("txtBackground")
call UpdateInfo
Sub UpdateInfo()
Set rs2 = createObject("ADODB.Recordset")
rs2.ActiveConnection = con
str2 = "Select * from Policy_Master where PolicyCode = '" & PolicyCode & "'"
rs2.open str2, con, 2, 2
If Not rs2.EOF then
rs2("ContactPerson") = contactPerson
rs2("ContactTel") = contactTel
rs2("Email") = email
rs2("ProductIdea") = productIdea
rs2("Background") = background
rs2("LastUpdate") = Date()
rs2.Update
Else
Response.Write("The Policy currently not found! Please try again after a while.")
End If
rs2.Close
End Sub
%>
---------------------------------------------
当我refresh在register.asp的时候, 他一直 call updateInfo..
一直store records. |
|
|
|
|
|
|
|
发表于 27-5-2006 09:19 AM
|
显示全部楼层
当成功register, redirect去另一面
新的一面只是纯粹的写些感谢词。。 |
|
|
|
|
|
|
|
发表于 27-5-2006 11:50 AM
|
显示全部楼层
原帖由 eastken 于 27-5-2006 03:36 AM 发表
当我refresh在register.asp的时候, 他一直 call updateInfo..
一直store records.
这样的话你的record不就是有很多都是一样的了。
还是你要的是,那一定的时间来update你的record呢??
可是这样的话,对你的server或internet来说有一点的吃力呢。 |
|
|
|
|
|
|
|
发表于 27-5-2006 08:28 PM
|
显示全部楼层
add新用户之前check看是否已经有一模一样资料的用户,有的话就显示error |
|
|
|
|
|
|
|
楼主 |
发表于 28-5-2006 12:00 AM
|
显示全部楼层
我想应该是用 redirect 吧。。。
因为如过我check那些资料否已经有一模一样资料的用户,是可以。。 但有些 case 就不可以。。
一些是allow的,因为 primary key 是 autoGenerate..
0001, 0002, 0003... |
|
|
|
|
|
|
|
发表于 28-5-2006 12:31 AM
|
显示全部楼层
原帖由 eastken 于 28-5-2006 12:00 AM 发表
我想应该是用 redirect 吧。。。
因为如过我check那些资料否已经有一模一样资料的用户,是可以。。 但有些 case 就不可以。。
一些是allow的,因为 primary key 是 autoGenerate..
0001, 0002, 0003...
解决方法就是用 Redirect. 例如:
If UpdateSuccess Then
Response.Redirect "somepage.asp"
End If
somepage.asp 可以是回到同样的一个页, 或是 thank you page.
这招也可以用在 update/delete. |
|
|
|
|
|
|
|
发表于 29-5-2006 04:51 PM
|
显示全部楼层
用
<form method="" action="form.asp">
method 不要用 "post". |
|
|
|
|
|
|
| |
本周最热论坛帖子
|