UserCorp_DataAction.asp
上传用户:jisenq
上传日期:2014-06-29
资源大小:7216k
文件大小:10k
源码类别:

数据库编程

开发平台:

ASP/ASPX

  1. <% Option Explicit %>
  2. <!--#include file="../../FS_Inc/Const.asp" -->
  3. <!--#include file="../../FS_InterFace/MF_Function.asp" -->
  4. <!--#include file="../../FS_Inc/Function.asp" -->
  5. <!--#include file="lib/strlib.asp" -->
  6. <!--#include file="../../FS_Inc/Md5.asp" -->
  7. <%'Copyright (c) 2006 Foosun Inc. Code by awen
  8. 'on error resume next
  9. Dim UserNumber
  10. Dim Str_BaseData_List,Str_OtherData_List,strUserNumberRule 
  11. Dim Fs_User
  12. MF_Default_Conn
  13. MF_User_Conn
  14. MF_Session_TF
  15. Set Fs_User = New Cls_User
  16. '***************************************
  17. Function CheckPostinput()
  18. Dim server_v1, server_v2
  19. CheckPostinput = False
  20. server_v1 = CStr(Request.ServerVariables("HTTP_REFERER"))
  21. server_v2 = CStr(Request.ServerVariables("SERVER_NAME"))
  22. If Mid(server_v1, 8, Len(server_v2)) = server_v2 Then
  23. CheckPostinput = True
  24. End If
  25. End Function
  26. If CheckPostinput = False Then
  27. Response.Redirect("lib/Error.asp?ErrCodes=<li>参数错误</li><li> 不要从外部提交数据</li>&ErrorUrl=../UserCorp.asp")
  28. Response.end
  29. End If
  30. Function CheckCF(FildName,FildValue,Str_LinkStr)
  31. '判断重复 Str_LinkStr = ' # ""
  32. CheckCF = User_Conn.execute("select count(*) from FS_ME_Users where "&FildName&"="&Str_LinkStr& FildValue &Str_LinkStr)(0)
  33. if err.number>0 then
  34. Response.Redirect("lib/error.asp?ErrCodes="&server.URLEncode(err.description))
  35. Response.End()
  36. end if
  37. End Function
  38. Function GetPwdByUserNumber(UserNumber)
  39. if UserNumber<>"" then 
  40. GetPwdByUserNumber = User_Conn.execute("select UserPassword from FS_ME_Users where UserNumber = '"&UserNumber&"'")(0)
  41. else
  42. GetPwdByUserNumber = ""
  43. end if
  44. if err.number>0 then
  45. err.clear : GetPwdByUserNumber = ""
  46. end if
  47. End Function
  48. Str_BaseData_List = "UserName,UserPassword,PassQuestion,PassAnswer,SafeCode,Email"
  49. Str_OtherData_List = "NickName,RealName,Sex,BothYear,Certificate,CerTificateCode,Province,City" _
  50. &",HeadPic,HeadPicSize,tel,Mobile,isMessage,HomePage,QQ,MSN,Address,PostCode,Vocation,Integral,FS_Money" _
  51. &",TempLastLoginTime,TempLastLoginTime_1,CloseTime,IsMarray,SelfIntro,isOpen,GroupID,isLock,UserFavor,OnlyLogin"
  52. select case Request.QueryString("Act")
  53. case "BaseData"
  54. UserNumber = NoSqlHack(trim(request.Form("frm_UserNumber_Edit1")))
  55. call save(Str_BaseData_List,1,0)
  56. case "OtherData"
  57. UserNumber = NoSqlHack(trim(request.Form("frm_UserNumber_Edit2")))
  58. if UserNumber="" then 
  59. Response.Redirect("lib/error.asp?ErrCodes=<li>修改时必要参数必须填写。</li>")
  60. response.End()
  61. end if
  62. call save(Str_OtherData_List,0,1)
  63. case "ThreeData"
  64. UserNumber = NoSqlHack(trim(request.Form("frm_UserNumber_Edit3")))
  65. if UserNumber="" then 
  66. Response.Redirect("lib/error.asp?ErrCodes=<li>修改时必要参数必须填写。</li>")
  67. response.End()
  68. end if
  69. Call SaveOtherData(UserNumber)
  70. case "Add_AllData"
  71. UserNumber = NoSqlHack(trim(request.Form("frm_UserNumber_Edit3")))
  72. call save(Str_BaseData_List &","& Str_OtherData_List,1,2)
  73. case "Del"
  74. Del
  75. end select 
  76. Sub Del()
  77. Dim Str_Tmp,Arr_Tmp,s_StrPWD_
  78. if request.QueryString("UserNumber")<>"" then 
  79. Str_Tmp = NoSqlHack(Trim(request.QueryString("UserNumber")))
  80. else
  81. Str_Tmp = request.Form("frm_UserNumber")
  82. end if
  83. if Str_Tmp="" then Response.Redirect("lib/error.asp?ErrCodes=<li>你必须至少选择一个进行删除。</li>")
  84. Str_Tmp = replace(Str_Tmp," ","")
  85. Arr_Tmp = split(Str_Tmp,",")
  86. strShowErr = ""
  87. on error resume next
  88. for each Str_Tmp in Arr_Tmp
  89. s_StrPWD_ = GetPwdByUserNumber(Str_Tmp)
  90. if s_StrPWD_<>"" then 
  91. Call Fs_User.DelUser(Str_Tmp,s_StrPWD_)
  92. else
  93. strShowErr = strShowErr & "<li>用户"&Str_Tmp&"未删除,可能该用户已不存在……。</li>"
  94. end if
  95. next
  96. if strShowErr<>"" then strShowErr = "<li>以下是删除失败的描述:</li>"&strShowErr
  97. Response.Redirect("lib/Success.asp?ErrorUrl=../UserCorp.asp&ErrCodes=<li>恭喜,删除成功。</li>"&strShowErr)
  98. End Sub
  99. Sub Save(Str_Tmp,Bit_IsNull,Action)
  100. Dim Arr_Tmp,UserSql
  101. Arr_Tmp = split(Str_Tmp,",")
  102. UserSql = "select UserNumber,IsCorporation, "&Str_Tmp&" from FS_ME_Users where UserNumber= '"&UserNumber&"'"
  103. Set UpdateUserRs = CreateObject(G_FS_RS)
  104. UpdateUserRs.Open UserSql,User_Conn,3,3
  105. if UserNumber<>"" and not UpdateUserRs.eof then 
  106. ''修改
  107. UpdateUserRs("IsCorporation") = 1
  108. for each Str_Tmp in Arr_Tmp
  109. if Bit_IsNull = 1 then 
  110. if request.Form("frm_"&Str_Tmp)<>"" then 
  111. if instr(",UserPassword,PassQuestion,PassAnswer,SafeCode,",","&Str_Tmp&",")>0 then 
  112. UpdateUserRs(Str_Tmp) = Md5(NoSqlHack(request.Form("frm_"&Str_Tmp)),16)
  113. else
  114. if NoSqlHack(request.Form("frm_"&Str_Tmp))<>"" then 
  115. UpdateUserRs(Str_Tmp) = NoSqlHack(request.Form("frm_"&Str_Tmp))
  116. else
  117. UpdateUserRs(Str_Tmp) = null
  118. end if
  119. end if
  120. end if
  121. else
  122. if NoSqlHack(request.Form("frm_"&Str_Tmp))<>"" then 
  123. UpdateUserRs(Str_Tmp) = NoSqlHack(request.Form("frm_"&Str_Tmp))
  124. else
  125. UpdateUserRs(Str_Tmp) = null
  126. end if
  127. end if
  128. next
  129. UpdateUserRs.update
  130. UpdateUserRs.close
  131. if err.number>0 then
  132. strShowErr = "<li>基础设置未修改成功。</li>"
  133. Response.Redirect("lib/error.asp?ErrCodes="&strShowErr)
  134. Response.End()
  135. else
  136. if Action > 1 then 
  137. Call SaveOtherData(UserNumber) ''保存公司特有信息。
  138. end if
  139. Response.Redirect("lib/success.asp?ErrCodes=<li>恭喜,修改成功。</li>&ErrorUrl="&server.URLEncode("../UserCorp.asp?Act=View&Add_Sql=A.UserNumber='"&UserNumber&"'"))
  140. Response.End()
  141. end if
  142. else
  143. ''新增
  144. strUserNumberRule= Fs_User.strUserNumberRule(p_UserNumberRule)
  145. if CheckCF("UserNumber",strUserNumberRule,"'")>0 then 
  146. Response.Redirect("lib/Error.asp?ErrCodes=<li>用户编号以外重复。请重新提交。</li>")
  147. Response.end
  148. end if
  149. if CheckCF("UserName",NoSqlHack(request.Form("frm_UserName")),"'")>0 then 
  150. Response.Redirect("lib/Error.asp?ErrCodes=<li>用户名重复。请重新提交。</li>")
  151. Response.end
  152. end if
  153. if CheckCF("Email",NoSqlHack(request.Form("frm_Email")),"'")>0 then 
  154. Response.Redirect("lib/Error.asp?ErrCodes=<li>用户名重复。请重新提交。</li>")
  155. Response.end
  156. end if
  157. UpdateUserRs.addnew
  158. UpdateUserRs("UserNumber") = strUserNumberRule
  159. UpdateUserRs("IsCorporation") = 1
  160. UpdateUserRs("RegTime") = now
  161. for each Str_Tmp in Arr_Tmp
  162. if Bit_IsNull = 1 then 
  163. if request.Form("frm_"&Str_Tmp)<>"" then 
  164. if instr(",UserPassword,PassQuestion,PassAnswer,SafeCode,",","&Str_Tmp&",")>0 then 
  165. UpdateUserRs(Str_Tmp) = Md5(NoSqlHack(request.Form("frm_"&Str_Tmp)),16)
  166. else
  167. if NoSqlHack(request.Form("frm_"&Str_Tmp))<>"" then 
  168. UpdateUserRs(Str_Tmp) = NoSqlHack(request.Form("frm_"&Str_Tmp))
  169. else
  170. UpdateUserRs(Str_Tmp) = null
  171. end if
  172. end if
  173. end if
  174. else
  175. if NoSqlHack(request.Form("frm_"&Str_Tmp))<>"" then 
  176. UpdateUserRs(Str_Tmp) = NoSqlHack(request.Form("frm_"&Str_Tmp))
  177. else
  178. UpdateUserRs(Str_Tmp) = null
  179. end if
  180. end if
  181. next
  182. UpdateUserRs.update
  183. 'response.End()
  184. UpdateUserRs.close
  185. if err.number>0 then
  186. strShowErr = "<li>基础设置未添加成功。</li>"
  187. Response.Redirect("lib/error.asp?ErrCodes="&strShowErr)
  188. Response.End()
  189. else
  190. if Action > 1 then 
  191. Call SaveOtherData(UserNumber) ''保存公司特有信息。
  192. '插入会员参数
  193. call Fs_User.InsertMyPara( strUserNumberRule )
  194. '插入日志
  195. call Fs_User.AddLog("注册",strUserNumberRule,p_NumGetPoint,p_NumGetMoney,"注册获得积分",0)
  196. '给会员发送电子邮件 
  197. Dim str_isSendMail
  198. str_isSendMail=false
  199. end if
  200. Response.Redirect("lib/success.asp?ErrCodes=<li>恭喜,新增成功。</li>&ErrorUrl="&server.URLEncode("../UserCorp.asp?Act=View&Add_Sql=A.UserNumber='"&strUserNumberRule&"'"))
  201. Response.End()
  202. end if
  203. end if
  204. End Sub
  205. Sub SaveOtherData(UserNumber)
  206. ''保存公司独有信息。
  207. Dim AddCorpDataObj,Str_Tmp_,Arr_Tmp_
  208. Set AddCorpDataObj = server.CreateObject(G_FS_RS)
  209. AddCorpDataObj.open "select  * From FS_ME_CorpUser where UserNumber='"&UserNumber&"'",User_Conn,1,3
  210. if AddCorpDataObj.eof then 
  211. strShowErr = "<li>用户"&UserNumber&"在公司用户表中不存在……。</li>"
  212. Response.Redirect("lib/error.asp?ErrCodes="&strShowErr)
  213. Response.End()
  214. end if
  215. Str_Tmp_="C_Name,C_ShortName,C_Province,C_City,C_Address,C_PostCode,C_ConactName,C_Tel,C_Fax,C_VocationClassID,C_Website,C_size,C_Capital,C_BankName,C_BankUserName"
  216. Arr_Tmp_ = split(Str_Tmp_,",")
  217. if UserNumber="" then AddCorpDataObj.addNew
  218. AddCorpDataObj("UserNumber") = UserNumber
  219. for each Str_Tmp_ in Arr_Tmp_
  220. if NoSqlHack(request.Form("frm_"&Str_Tmp_))<>"" then 
  221. AddCorpDataObj(Str_Tmp_) = NoSqlHack(request.Form("frm_"&Str_Tmp_))
  222. else
  223. AddCorpDataObj(Str_Tmp_) = null
  224. end if
  225. 'response.Write(Str_Tmp_&":"&NoSqlHack(request.Form("frm_"&Str_Tmp_))&"<br>")
  226. next
  227. AddCorpDataObj("isYellowPage") = 0 
  228. AddCorpDataObj("isYellowPageCheck") = 0 
  229. if p_isCheckCorp = 1 then
  230. AddCorpDataObj("isLockCorp") =1
  231. Else
  232. AddCorpDataObj("isLockCorp") =0
  233. End if
  234. AddCorpDataObj.update
  235. AddCorpDataObj.close
  236. set AddCorpDataObj = nothing
  237. if err.number>0 then
  238. '回滚
  239. s_StrPWD_ = GetPwdByUserNumber(UserNumber)
  240. if s_StrPWD_<>"" then 
  241. Call Fs_User.DelUser(UserNumber,s_StrPWD_)
  242. strShowErr = strShowErr & "<li>保存公司扩展信息时出错,用户"&UserNumber&"基本信息已删除。</li>"
  243. else
  244. strShowErr = strShowErr & "<li>用户"&UserNumber&"未删除,可能该用户已不存在……。</li>"
  245. end if
  246. Response.Redirect("lib/error.asp?ErrCodes="&strShowErr)
  247. Response.End()
  248. else
  249. Response.Redirect("lib/success.asp?ErrCodes=<li>恭喜,修改成功。</li>&ErrorUrl="&server.URLEncode("../UserCorp.asp?Act=View&Add_Sql=A.UserNumber='"&UserNumber&"'"))
  250. Response.End()
  251. end if
  252. End Sub
  253. ''=========================================================
  254. User_Conn.Close
  255. Set User_Conn=nothing
  256. %>
  257. <!-- Powered by: FoosunCMS4.0系列,Company:Foosun Inc. -->