当前位置: 首页 > 图文教程 > 网络编程 > ASP > javascript asp教程 日期相关

ASP
ASP六大对象介绍
使用Filter实现信息的二次检索
让弹出窗口变得“听话”一些
在ASP中利用“正则表达式” 对象实现UBB风格的论坛
“Web 匿名用户”帐户密码的位置
对一些编程初学者的良言警句
ASP编程中15个非常有用的例子
精彩:ASP遗留的二十大积习
关于Asp代码与页面的分离
教大家如何利用ASP打造网站论坛DIY(1)
教大家如何利用ASP打造网站论坛DIY(2)
网站安全:防范ASP木马的十大基本原则
用ASP设计一个留言薄
趣味访客计数器设计两则
我的ASP之旅—二级联动菜单制作
ASP编程--新手上路篇:ASP技术简介
用ASP实现网上考试系统
请注意!常见的ASP脚本攻击及防范技巧
ASP开发的WAP格式简易邮件系统实例
asp基础教程:网页间数据传递方法小结

ASP 中的 javascript asp教程 日期相关


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 212 ::
收藏到网摘: n/a

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.