值班表的问题,向数据库写入多条记录

dreat 2009-01-17 01:49:47
值班表:


-------------------------------------
日期 | 值班人员
-------------------------------------
2008-1-01 | 张三
-------------------------------------
2008-1-02 | 李四
-------------------------------------
.....

--------------------------------------

数据库:Csinfo_Watch
日期字段:Watch_Date
值班人员字段:Watch_employee

已经按月份输出好表格,现在要填写好一个月的值班情况后一次性添加到数据库(或者可以只提交几天的,不定)

如何写循环去添加,修改的页面又如何去做?



...全文
272 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
cuixiping 2009-01-17
  • 打赏
  • 举报
回复
2009年了,你才开始学ASP,建议你放弃,转投ASP.NET或PHP或JSP,这是从职业角度讲。当然,如果你是自己写着玩,那就无可厚非了。
dreat 2009-01-17
  • 打赏
  • 举报
回复
我用js写了个当月的表,用你的方法测试了下,不行
不知道是不是获取时间参数不对的原因
lzp4881 2009-01-17
  • 打赏
  • 举报
回复
<%
dt1 = Date
dt1 = CDate(Year(dt1) & "-" & Month(dt1) & "-1") '得到本月第一天
dt2 = DateAdd("m", 1, dt1) '得到下个月第一天
response.write(DateDiff("d", dt1, dt2)) '得到两个月的差
%>
lzp4881 2009-01-17
  • 打赏
  • 举报
回复
你先算出本月的天数再循环啊
dreat 2009-01-17
  • 打赏
  • 举报
回复
i=1 to 30


这样不行啊,有的月份是31天,还有29天==
lzp4881 2009-01-17
  • 打赏
  • 举报
回复
<%
...数据库连接
action=request.QueryString("action")
Watch_Date=split(request.form("Watch_Date"),",")
Watch_employee=split(request.form("Watch_employee"),",")

if action="save" then
for i=0 to ubound(Watch_Date)
if Watch_Date(i) <>"" then conn.execute("insert into [Csinfo_Watch] (Watch_Date,Watch_employee) values ('"&Watch_Date(i)&"','"&Watch_employee(i)&"')")
end if
next
end if
%>
<form action="?action=save" method="post" name="form1">
<%
for i=1 to 30
response.write " 日期: <input name='Watch_Date' type='text' size='10'>"
response.write " 值班人员: <input name='Watch_employee' type='text' size='10'>"
response.write " <br>"
next
%>
<input type="submit" name="submit">
</form>
lzp4881 2009-01-17
  • 打赏
  • 举报
回复
<%
...数据库连接
action=request.QueryString("action")
Watch_Date=split(request.form("Watch_Date"),",")
Watch_employee=split(request.form("Watch_employee"),",")

if action="save" then
for i=0 to ubound(Watch_Date)
if aa(i) <>"" then conn.execute("insert into [Csinfo_Watch] (Watch_Date,Watch_employee) values ('"&Watch_Date(i)&"','"&Watch_employee(i)&"')")
end if
next
end if
%>
<form action="?action=save" method="post" name="form1">
<%
for i=1 to 30
response.write " 日期:<input name='Watch_Date' type='text' size='10'>"
response.write " 值班人员:<input name='Watch_employee' type='text' size='10'>"
response.write " <br>"
next
%>
<input type="submit" name="submit">
</form>
dreat 2009-01-17
  • 打赏
  • 举报
回复
实例。。
chinayuy 2009-01-17
  • 打赏
  • 举报
回复
do while

loop
----------
while

wend

dreat 2009-01-17
  • 打赏
  • 举报
回复
up
dreat 2009-01-17
  • 打赏
  • 举报
回复
up!
toury 2009-01-17
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 dreat 的回复:]
呵呵,飘好,不送...
[/Quote]
顶起!
dreat 2009-01-17
  • 打赏
  • 举报
回复
呵呵,飘好,不送...
layers2323 2009-01-17
  • 打赏
  • 举报
回复
唉~~~
这个大道理写得很详细了。
toury 2009-01-17
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 dreat 的回复:]

大道理谁不明白?
[/Quote]

谢谢您的指教!
本来我已经写好了示例代码,可是刚才CSDN出小问题,没发出去,就看到LZ兄弟你的"大道理谁不明白?",哈哈,算我多事了,打扰你了,道歉道歉~~~

飘过~
dreat 2009-01-17
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 toury 的回复:]
1、确定每个月的天数;
2、根据天数循环在表单内生成值班人员统计输入表格
3、提交表单数据到后台
4、将收到的数据字符串生成数组,然后循环判断哪个日期是空的就跳过,否则拼接SQL语句
5、conn.execute(你拼接好的INSERT语句)

6、修改一个道理,只不过载入页面的时候读库把相应日期内的内容填进表格而已;然后重复上面的3、4
7、conn.execute(你拼接好的UPDATE语句)
[/Quote]

大道理谁不明白?
toury 2009-01-17
  • 打赏
  • 举报
回复
1、确定每个月的天数;
2、根据天数循环在表单内生成值班人员统计输入表格
3、提交表单数据到后台
4、将收到的数据字符串生成数组,然后循环判断哪个日期是空的就跳过,否则拼接SQL语句
5、conn.execute(你拼接好的INSERT语句)

6、修改一个道理,只不过载入页面的时候读库把相应日期内的内容填进表格而已;然后重复上面的3、4
7、conn.execute(你拼接好的UPDATE语句)
dreat 2009-01-17
  • 打赏
  • 举报
回复
up?????
dreat 2009-01-17
  • 打赏
  • 举报
回复
insert into Csinfo_Watch(Watch_Date,Watch_Employee)values(2009-1-01,'张三')
insert into Csinfo_Watch(Watch_Date,Watch_Employee)values(2009-1-01,'李四')
......
insert into Csinfo_Watch(Watch_Date,Watch_Employee)values(2009-1-20,'王麻子')
dreat 2009-01-17
  • 打赏
  • 举报
回复
也就是说如果添加了20天的
就要写20条值班记录到数据库中

2009-1-01 张三
2009-1-02 李四
.....
2009-1-20 王麻子
加载更多回复(1)

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧