回 帖 发 新 帖 刷新版面

主题:ASP变量传递的巨大问题 ——请教

Messagec="Message.asp?showMain=err&Sevs="&SessionRC&"&Dllsend=bai&Recode="&Recode 

if len(FrmUserName)<3 and len(FrmUserName)>20 then 
Recode=server.URLencode("用户名只能为3-20位字母或数字!") 
response.redirect(Messagec) 
response.End 
end if 

结果Message.asp页面得不到Recode的值 貌似是下面的Recode传不到上面去。请问各位大大这个如何解决? 


不要说这样
Recode=server.URLencode("用户名只能为3-20位字母或数字!") 
response.redirect("Message.asp?showMain=err&Sevs="&SessionRC&"&Dllsend=bai"&"&Recode="&Recode) 


那这个问题就没有意义了,我就是要把
response.redirect("Message.asp?showMain=err&Sevs="&SessionRC&"&Dllsend=bai"&"&Recode="&Recode) 放在上面当一个参数来读取。 
因为下面还有许多判断 其它的都一样 只有Recode不同,我想节省代码。呵呵谢谢了!

回复列表 (共4个回复)

沙发

代码流程错误,这种结果也是必然的了,因为第一行代码中,Recode的值已经被带入到Messagec里面了。
接下来的判断语句中,Recode的值改变了,而Messagec没有被重新赋值,也就是说Recode的重新赋值没有任何意义。

板凳

哦 谢谢liulei001,那有办法把Recode的新值传上去吗?

3 楼

必须重新赋值。

Messagec="Message.asp?showMain=err&Sevs="&SessionRC&"&Dllsend=bai"

if len(FrmUserName)<3 and len(FrmUserName)>20 then 
  Recode="Recode=" & server.URLencode("用户名只能为3-20位字母或数字!") 
  response.redirect(Messagec & Recode )
  response.End 
end if 

4 楼

非常感谢。我怎么就没想到那!

我来回复

您尚未登录,请登录后再回复。点此登录或注册