您现在的位置是:首页
>
jsp如何获取表单数据 ASP讲座之二:读取通过表单发送的数据
ASP讲座之二:读取通过表单发送的数据 学习ASP 最重要的就是要掌握ASP内置的六大对象 下面我们继续通过实例学习Reque t对象 为了加深理解 务请运行这些程序看看输出结果 一 使
ASP讲座之二:读取通过表单发送的数据

学习ASP 最重要的就是要掌握ASP内置的六大对象 下面我们继续通过实例学习Request对象 为了加深理解 务请运行这些程序看看输出结果 一 使用Request ServerVariables获取环境变量 这部分内容很简单 但获取的内容却很重要 如何获取?请看下例 <%@ Language=VBScript %> <HTML><BODY> <% wuf asp Response Write 运行ASP文件的路径: &_ Request ServerVariables( Script_Name ) & <Br> Response Write 返回content的数据长度: &_ Request ServerVariables( Content_Length ) & <Br> Response Write 返回客户的IP地址: &_ Request ServerVariables( Remote_Addr ) & <Br> Response Write 浏览器名: &_ Request ServerVariables( HTTP_USER_AGENT ) & <Br> Response Write 返回主页实际物理路径: &_ Request ServerVariables( APPL_PHYSICAL_PATH ) & <Br> %> <table colspan= cellpadding= border= > <tr> <td align=CENTER bgcolor= # width= > <font color= #ffffff size= >环境变量名</font></td> <td align=CENTER width= bgcolor= # > <font color= #ffffff size= >内容</font></td> </tr> <tr> <td bgcolor= f efde align=CENTER> <font size= > result </font></td> <td bgcolor= f efde align=CENTER> <font size= > result </font></td></tr> </table> </BODY></HTML> Now 你应该发现上一讲中的例程wuf asp原来是多么的easy! 注意 该程序的后面一部分HTML标记纯是为下面的例子作准备的 所以不要觉得奇怪 那么 还有哪些环境变量呢?运行下面的例子就知道了(本程序删除了部分代码 最好去我站点下载源程序便于理解) <%@ Language=VBScript %> <% wuf asp Option Explicit Dim Sv %> <HTML><BODY> <table colspan= cellpadding= border= > <tr> <td align=CENTER bgcolor= # width= > <font color= #ffffff size= >环境变量名</font></td> <td align=CENTER width= bgcolor= # > <font color= #ffffff size= >结果</font></td> </tr> <% for each Sv In Request ServerVariables Response Write <tr> Response Write <td bgcolor= f efde align=CENTER> <font style= ARIAL NARROW size= > Response Write Sv Response Write </font></td> Response Write <td bgcolor= f efde align=CENTER> <font style= ARIAL NARROW size= > Response Write Request ServerVariables(Sv) Response Write </font></td></tr> next %> </table> </BODY></HTML> 这里使用了For…Each循环 用来列举一个集合中的所有元素 如果后半部分看不懂 请对照wuf asp 再瞧瞧运行结果 仔细体会一下(什么态度?) 二 通过表单向服务器传送数据(也可这样理解 服务器端如何读取客户端发送的数据) 做过主页 应该知道很多主页通常都使用Form表单让用户输入数据 然后通过 submit(提交) 按钮发送数据 From表单中的 method 有两种主要方法 POST和GET 而 action 后一般都是指定一个 cgi pl或 asp文件 今天我们要学习的就是如果编写这个 asp文件 (一) 如果使用POST方法传送数据 则用Request Form来读取数据 先编辑如下一个文件 供用户输入数据 <> <body bgcolor= #FFFFFF > <form method= post action= wuf asp > 姓名 <input type= text name= yourname ><br> 性别 <select name= gender > <option>男</option> <option>女</option> </select> <br> 留言 <textarea name= message >您好! 注意多行文本的处理</textarea> <br> 爱好(按住Ctrl键可多选) <select name= hobby multiple size= > <option>电脑</option> <option>购物</option> <option>电影</option> <option>读书</option> </select> <br> <input type= submit name= Submit value= 提交 > <input type= reset name= Submit value= Reset > </form> </body> </> 再编写一个需用到的文件wuf asp收集数据 <%@ Language=VBScript %> <% wuf asp Option Explicit Response Expires= Dim StrName StrGender StrM StrMsg StrName = Trim(Request Form( yourname )) Trim函数用来除首尾空格 StrGender = Trim(Request Form( gender )) StrM = Trim(Request Form( message )) StrMsg = Replace(StrM vbcrlf <Br> & vbcrlf) vbcrlf相当于回车符和换行符的组合 至于Replace函数 其作用就是将字符串StrM中的vbcrlf替换为 <Br> & vbcrlf(请思考这个vbcrlf有什么用?查看输出文件的HTML源码就明白了) 详细请参考VBScript帮助 %> <HTML><BODY> 姓名: <%= StrName%><Br><Br> 性别: <%= StrGender%><Br><Br> 留言: <Br><Br> <%= StrM%><Br><Br> <%= StrMsg%><Br><Br> 实际上 提交 按钮的值也被传递: <Br> <%= Request Form( Submit )%><Br><Br> <% 先把上面看懂 有兴趣再看看如何读取多个选项 Response Write 共选择爱好项数: & Request Form( hobby ) Count & <Br> Dim I For I = to Request Form( hobby ) Count Response Write Request Form( hobby )(I) & <Br> Next %> </BODY></HTML> 在这个的例子中 为了便于理解 我们使用了两个程序 实际上只使用一个程序也可以 如果有兴趣请看下面的例程wuf asp 有助于加深对环境变量的理解 <%@ Language=VBScript %> <% wuf asp Option Explicit Response Expires= Dim StrName StrGender StrM StrMsg If Request ServerVariables( Content_Length ) <> Then 提交数据后 这个长度就不会是 因此执行下面的语句 将结果显示出来 下面一部分实际上是照搬 wuf asp StrName = Trim(Request Form( yourname )) StrGender = Trim(Request Form( gender )) StrM = Trim(Request Form( message )) StrMsg = Replace(StrM vbcrlf <Br> & vbcrlf) %> <HTML><BODY> 姓名: <%= StrName%><Br><Br> 性别: <%= StrGender%><Br><Br> 留言: <Br><Br> <%= StrM%><Br><Br> <%= StrMsg%><Br><Br> <% Response Write 共选择爱好项数: & Request Form( hobby ) Count & <Br> Dim I For I = to Request Form( hobby ) Count Response Write Request Form( hobby )(I) & <Br> Next %> </BODY></HTML> <% Else 当第一次加载页面时 没有提交任何数据 故前面一部分并不执行 而是从这里开始 这也就是为什么会有两对 <HTML></HTML> 的原因 下面照搬 就行了 <form method= post action= wuf asp > 给用环境变量替换掉了 其实完全一样 Response Write 看看结果: & Request ServerVariables( Script_name ) & <Br> %> <HTML><BODY> <form method= post action= <%= Request ServerVariables( Script_name )%> > 姓名 <input type= text name= yourname ><br> 性别 <select name= gender > <option>男</option> <option>女</option> </select> <br> 留言 <textarea name= message >您好! 注意多行文本的处理</textarea> <br> 爱好(按住Ctrl键可多选) <select name= hobby multiple size= > <option>电脑</option> <option>购物</option> <option>电影</option> <option>读书</option> </select> <br> <input type= submit name= Submit value= 提交 > <input type= reset name= Submit value= Reset > </form> </BO lishixinzhi/Article/program/net/201311/12157
很赞哦! (1059)