标题:求大神帮忙! 我想把一个循环写入数据库
只看楼主
bianjinhui
Rank: 1
来 自:天津
等 级:新手上路
帖 子:8
专家分:0
注 册:2016-6-5
结帖率:66.67%
已结贴  问题点数:10 回复次数:6 
求大神帮忙! 我想把一个循环写入数据库
<div style=" width:500px; height:300px; border:solid 1px #000000; float:left;">
  <form id="form2" name="form2" method="post" action="cnp_admin.asp">
   <p>用户名:
     <input type="text" name="username" />
   </p>
   <p>年份:
      <select name="date1">
        <option value="2016">2016</option>
        <option value="2017">2017</option>
        <option value="2018">2018</option>
        <option value="2019">2019</option>
        <option value="2020">2020</option>
      </select>
    </p>
   <p>月份:
      <select name="date2">
        <option value="1">1</option>
        <option value="2">2</option>
        <option value="3">3</option>
        <option value="4">4</option>
        <option value="5">5</option>
        <option value="6">6</option>
        <option value="7">7</option>
        <option value="8">8</option>
        <option value="9">9</option>
        <option value="10">10</option>
        <option value="11">11</option>
        <option value="12">12</option>
      </select>   
    </p>
   <p>排班:
     <label>
     <input type="radio" name="Radio" value="day" />
白班</label>
     <input type="radio" name="Radio" value="night" />
     <label>夜班</label>
     <input type="checkbox" name="cbox" value="cbox" />
   2日开始</p>
   <p>
     <label></label>
     <br />
     <label></label>
     <br />
   </p>
   <input type="submit" name="Submit2" value=" 提 交 " />
  </form>
</div>
============================================================
<!--#include file="conn/conn.asp"-->
<%
'==============================
'数据库字段:username,year,month,work
'==============================
   dim username,date1,date2,radio,cbox
   set rs=server.CreateObject("ADODB.recordset")
      sql="select * from Days"
      rs.open sql,conn,1,3
      rs.addnew
      username=request.Form("username")
      date1=request.Form("date1")
      date2=request.Form("date2")
      radio=request.Form("radio")
      cbox=request.Form("cbox")
      rs("username")=username
      rs("year")=date1
      rs("month")=date2
   function yeartime(run)
        if (run mod 4)<>0 then
        yeartime=false
        elseif (run mod 100)<>0 and (run mod 4)=0 then
        yeartime=true
        elseif (run mod 400)=0 then
        yeartime=true
        end if
        end function
        dim days
        days=30
        if yeartime(date2)=1 or 3 or 5 or 7 or 8 or 10 or 12 then
          days=31
          elseif yeartime(date2)=2 then
          days=29
          else
          days=28
          end if
        if radio="night" then
          for i=1 to days step 2
          rs("work")=i&"日 夜班</br>"
          next
          elseif radio="night" and cbox="cbox" then
          for i=2 to days step 2
          rs("work")=i&"日 夜班</br>"
          next
        end if
      rs.update
  
%>
搜索更多相关主题的帖子: 用户名 action border method option 
2016-06-26 10:08
bianjinhui
Rank: 1
来 自:天津
等 级:新手上路
帖 子:8
专家分:0
注 册:2016-6-5
得分:0 
ADODB.Recordset 错误 '800a0cc1'

在对应所需名称或序数的集合中,未找到项目。

/cnp_admin.asp,行 17
2016-06-27 06:56
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:396
帖 子:11713
专家分:43267
注 册:2006-5-13
得分:0 
出错行的代码呢?
我采用的排错方法是将复杂的代码先简化,测试通过之后再逐条添加,这样就更容易查到原因。比如写一条记录到数据库,我先写一个字段,没有问题之后再加一个字段,直到所有的字段全部添加通过。

活到老,学到老! http://www. E-mail:hu-jj@
2016-06-28 06:33
bianjinhui
Rank: 1
来 自:天津
等 级:新手上路
帖 子:8
专家分:0
注 册:2016-6-5
得分:0 
回复 3楼 hu9jj
写入循环已经解决了,谢谢! 改成这样了
 
   function yeartime(run)
        if (run mod 4)<>0 then
        yeartime=false
        elseif (run mod 100)<>0 and (run mod 4)=0 then
        yeartime=true
        elseif (run mod 400)=0 then
        yeartime=true
        end if
        end function
   function monthtime(years,months)
        dim days
          days=30
      select case months
       case 1,3,5,7,8,10,12
          days=31
       case 2
        if yeartime(years)=true then
          days=29
        else
          days=28
        end if
        end select
          monthtime=days
        end function
      if radio="night" then
          for i=1 to monthtime(date1,date2) step 2
          rs1("work")=rs1("work")&i&"日 夜班"&"|"
          next
          elseif radio="night" and cbox="true" then
          for i=2 to monthtime step 2
          rs1("work")=rs1("work")&i&"日 夜班"&"|"
          next
          rs1.addnew
          rs1("years")=date1
          rs1("months")=date2
          rs1.update
          rs1.close
          rs2.close
      set rs1=nothing
      set rs2=nothing
      set conn=nothing
          response.Write(cnp_adminmsgb)
          response.End()
      end if
2016-06-30 19:00
bianjinhui
Rank: 1
来 自:天津
等 级:新手上路
帖 子:8
专家分:0
注 册:2016-6-5
得分:0 
回复 3楼 hu9jj
  现在还有个问题,
  dim username,date1,date2,radio,cbox,cnp_adminmsga,cnp_adminmsgb,cnp_adminmsgc,cnp_adminmsgd
      cnp_adminmsga="<script>alert('用户名不能为空!');javascript:history.go(-1)</script>"
      cnp_adminmsgb="<script>alert('添加数据成功!');javascript:history.go(-1)</script>"
      cnp_adminmsgc="<script>alert('用户名不存在!');javascript:history.go(-1)</script>"
      cnp_adminmsgd="<script language=javascript>alert('请选择排班!');javascript:history.go(-1)</script>"
      username=request.Form("username")
      date1=request.Form("date1")
      date2=request.Form("date2")
      radio=request.Form("radio")
      cbox=request.Form("cbox")
    if username="" then
       response.Write(cnp_adminmsga)  '*******************这个是空的话,可以弹出JS脚本*********************
       response.End()
    elseif radio="" then
       response.Write(cnp_adminmsgd)  '*******************这个是空的话,直接输出的是javascript>alert('请选择排班!');javascript:history.go(-1)这个字符串,这是为什么呢?麻烦帮忙看一下*********************
       response.End()
2016-06-30 19:04
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:396
帖 子:11713
专家分:43267
注 册:2006-5-13
得分:10 
试试改用系统函数alert()来发送提示信息如何?

活到老,学到老! http://www. E-mail:hu-jj@
2016-07-01 06:20



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-466368-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.129820 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved