前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >拉驴子出来溜溜,VFPBS实战做一个查询页面

拉驴子出来溜溜,VFPBS实战做一个查询页面

作者头像
加菲猫的VFP
发布2021-12-01 20:42:31
2750
发布2021-12-01 20:42:31
举报
文章被收录于专栏:加菲猫的VFP

拉驴子出来溜溜,VFPBS实战做一个查询页面

今天猫猫带大家来做一个查询的界面,代码极少,学习东西需要学习本质,先学习原理,再考虑变化,所有的花式都在本质上变化的。 今天虽然教的是WEB1.0的技术,实际中WEB2.0也是在其基础出发展而来。

框架会员,只要你肯来学,我都会把你教会,通晓BS、CS 、APP、公众号、中间层等等。

页面设计

页面一个form 一个文本框,一个按钮 底下展现文本信息

页面设计

前端代码html代码

代码语言:javascript
复制
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<form action="ctl_ryxx.fsp">
请查询<input type="text" name="tj" value="">
<input type="submit" value="查询">
</form>
id 姓名 年龄<br>
</body>
</html>

存放到wwwroot\tmpl目录下叫ryxx.html

后端代码vfp代码

代码语言:javascript
复制
Define Class ctl_ryxx As Session
Procedure ondefault
lcTmpl=getWwwrootPath("tmpl")+"ryxx.html"  &&得到HTML模板的路径
chtml=FWS_MergeFile(lcTmpl)    &&执行模板
_currentcode="UTF-8"  &&模板文件本身是UTF-8格式
Use In Select("ryxx")  &&关闭表
Return cHtml
endproc
enddefine

测试

输入http://192.168.0.99:801/ctl_ryxx.fsp 后端的ctl_ryxx.onDefault方法启动 便会输出一个页面

页面

文本框架输入文字,点击按钮之后发生了什么
  1. 前端拼接键值对 将表单中的文本框的name=tj value=输入值拼成了tj=输入值提交给form action,即ctl_ryxx.fsp
  2. 后端onDefault将会拿到这值
  3. 取出键值对(tj=输入值)
  4. 打开表,启动筛选
  5. 重新加载页面和数据,重新输出

后端代码

代码语言:javascript
复制
PRIVATE cTj
cTj=HttpQueryParams("tj")
If !Used("ryxx")
    Use ryxx In 0
Endif
Select ryxx
SET FILTER TO cTj$name &&筛选完的数据
lcTmpl=getWwwrootPath("tmpl")+"ryxx.html"  &&得到HTML模板的路径
chtml=FWS_MergeFile(lcTmpl)    &&执行模板
_currentcode="UTF-8"  &&模板文件本身是UTF-8格式
Use In Select("ryxx")  &&关闭表
Return cHtml

前端html代码增加几行代码

代码语言:javascript
复制
<form action="ctl_ryxx.fsp">
请查询<input type="text" name="tj" value="">
<input type="submit" value="查询">
</form>
id 姓名 年龄<br>
<% scan %>
<%=u(id)%> <%=u(name)%> <%=u(age)%><br>
<% endscan %>

执行看看效果 观察地址栏的变化

通过URL提交数据 就是GET方式

让文本框再次加载时保留输入的值

代码语言:javascript
复制
<form action="ctl_ryxx.fsp">
请查询<input type="text" name="tj" value="<%=u(cTj)%>">
<input type="submit" value="查询">
</form>
注意这里是后端private声明的cTj, 而不是表单中name的tj
<form action="ctl_ryxx.fsp">
请查询<input type="text" name="tj" value="<%=u(cTj)%>">
<input type="submit" value="查询">
</form>

注意这里是后端private声明的cTj, 而不是表单中name的tj

作业:测试form method=post与get异同

代码语言:javascript
复制
<form action=“ctl_ryxx.fsp” method=“post”>
请查询<input type="text" name="tj" value="<%=u(cTj)%>">
<input type="submit" value="查询">
</form>

请找出至少一个不同点,直观可被观察的现象

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-11-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 加菲猫的VFP 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 页面设计
  • 前端代码html代码
  • 后端代码vfp代码
  • 测试
    • 文本框架输入文字,点击按钮之后发生了什么
    • 后端代码
    • 前端html代码增加几行代码
    • 让文本框再次加载时保留输入的值
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档