javascript asp教程 日期相关

JavaScript is loosely typed. Database files are not. If you put text into a Boolean database column or a Boolean value into a date/time column, then you will get an error.

For the most part this is not a problem, except for date/time. It does not correspond to the JavaScript Date Object. So, we have to tear Date apart and rebuild it from scratch. If we don't, then we get a type mismatch error.

Take a look at the snippet below. (It's not part of our lesson, but I want you to look at it anyway.) Please notice DateTime.

objConn.Open(strConnect)
sql = "INSERT INTO FoloVisit (SessionID,VisitTime) "
sql+= "Values ('" + Session.SessionID + "',#" + DateTime + "#);"
objConn.Execute(sql)

DateTime has to be in a very particular format: #mm/dd/yyyy hh:mm:ss [a|p]m# As you well know new Date() doesn't even come close to this format. We will fix that in the script below.

Get Started:

Below is the script for Lesson 20.

<%@LANGUAGE="JavaScript"%>
<SCRIPT LANGUAGE="VBScript" RUNAT="Server">
Dim VBTime,VBDate,VBDateTime
VBTime = Time & " "
VBDate = Date & " "
VBDateTime = Date & " " & Time
</SCRIPT>
<%
function whatTimeIsIt()
{
var m=new Date()
var minute=m.getMinutes()
var second=m.getSeconds()
var ampm=false
if (minute >=0 && minute < 10)
{ minute=("0" + minute) }
if (second >= 0 && second < 10 )
{ second=("0" + second) }
var hours=m.getHours()
if (hours > 12)
{ ampm=true
hours=hours-12 }
if (hours==12)
{ ampm=true }
if (hours == 0)
{ hours=hours+12
ampm=false }
if (ampm)
{ ampm=" PM" }
else
{ ampm=" AM" }
var myTime=hours + ":" + minute + ":" + second + ampm
return myTime;
}
var DateTime = new Date();
var Month = (DateTime.getMonth() + 1) + "/";
var Day = DateTime.getDate() + "/";
var Year = DateTime.getFullYear();
var JustTheDate = Month + Day + Year;
var JustTheTime = whatTimeIsIt();
var DateTime = Month + Day + Year + " " + whatTimeIsIt();

Response.Write("<HTML>\r")
Response.Write("<STRONG>JavaScript Time</STRONG><BR>\r")
Response.Write("The date in proper database format is: " + JustTheDate + "<BR>\r")
Response.Write("The time in proper database format is: " + JustTheTime + "<BR>\r")
Response.Write("The date & time together are: " + DateTime + "<BR>\r")
Response.Write("<HR>\r")
Response.Write("<STRONG>VBScript Time</STRONG><BR>\r")
Response.Write("The date in proper database format is: " + VBDate + "<BR>\r")
Response.Write("The time in proper database format is: " + VBTime + "<BR>\r")
Response.Write("The date & time together are: " + VBDateTime + "<BR>\r")
Response.Write("</HTML>")
%>


Click Here to run the script in a new window.

Living on VBScript Time:

The other way to solve the problem is to use the VBScript date and time Objects. What can I say? If you can't beat 'em, steal from 'em!

Time For a Tangent:

If all you want to do is store new Date() exactly as-is in your database then do so in a text or memo column. The disadvantage of using this tactic is that SQL cannot sort items correctly by date and time. Instead, they'll be sorted by alphabetical order.

Final Thoughts:

That's the end of the lesson plan. I have received messages from all over the world. Thank you for your kind words. If you have questions or comments you can click onto the link for the home page and then there's a link to contact me.

(0)

相关推荐

  • javascript asp教程 日期相关

    JavaScript is loosely typed. Database files are not. If you put text into a Boolean database column or a Boolean value into a date/time column, then you will get an error. For the most part this is not a problem, except for date/time. It does not cor

  • javascript asp教程第十二课---session对象

    Overview: The Session Object is how you track a single user across many pages. It has four (4) properties, two (2) collections, one (1) method, and two (2) events. Get Started: In this series of examples we will create a password system. We will use

  • javascript asp教程Recordset记录

    Recordset is another created/instanciated Object. It is a collection of data taken from a database. Recordset has 26 properties, 25 methods, 11 events, and two (2) collections. The vast majority of Recordset is beyond the scope of this web site. Quic

  • javascript asp教程第十课--global asa

    Global.asa: First of all, what is a global.asa? It's an optional script file that holds certain "global" information that you can access through the entire ASP appliciation. The global.asa is a plain text file saved with the .asa extension. You

  • javascript asp教程第六课-- response方法

    response 对象:reponse是asp中六个对象之一.它代表了服务器端对浏览器的回应.response有8种方法,9种属性和一个集.在这一课,我们就重点讲述方法.方法:在javascript中,asp方法使用括号.请注意依赖response.buffer的两个方法,我们将在下一课讲到他们.同样应该注意到addheader()和redirect(),因为他们必须优先于write()执行.所有的方法都在上面描述和演示了.下面我将详细讲述每一个方法.我将花点额外的时间来讲述我们用的最多的两个方

  • javascript asp教程第七课--response属性

    Below is a table of Response Properties along with examples and explanations. Response Properties Buffer Response.Buffer = trueAllows for the buffering of output CacheControl Response.CacheControl="Public" Sets Cache to "Public" or &qu

  • javascript asp教程第三课 new String() 构造器

    开始:new String() 是本课程计划中较早出现的另一个让人感觉到奇怪的地方.但和转义字符一样, new String()是创建一个成功的asp javascript应用的必须元素.下面是本课的两个脚本:下面是实际上承担重量的脚本:行为中的new String( ):现在我们来看看下面的asp行.Request.Form 我们将在后面有独立的课程来讲授.下面才是我们现在要讲的重点.在request.form中所持有的数据(来自用户的数据)并不是一个javascript数据类型.相反,它是一

  • javascript asp教程创建数据库连接

    While this section is devoted to ASP database utilization, it very important to remember that this web site is not intended to be a thorough ASP resource. Remember, the focus of this site is strictly limited to how to use JavaScript as your primary s

  • javascript asp教程第二课--转义字符

    并非是题外话:我们在第二课中要讲到的"转义字符"看起来与我们的课程并没有关系.事实并非如此.转义字符是在 asp中使用javascript的一个完整部分.而第二课要讲的恰恰就是转义字符.没有转义字符,那么你为了 写出有效率的asp脚本将会遇到许多的困难.抱歉,下面进入正题:以下是第二课的asp脚本.还记不记得在第一课的列子中,我们怎样编写了一个html输出都在同一行的代码.转义字符允许我们增加 换行符号.下面是我们上边例子在客户端html输出页面的代码:换行符:我又在下面重新打了一行a

  • javascript asp教程错误处理

    The ASPError Object has zero (0) Methods, nine (9) Properties, zero (0) Events, and zero (0) Collections. AspCode AspDescription Category Column Description File Line Number SourceThe way you access the ASPError Properties is with a Server Method. Ye

随机推荐