RSS
热门关键字:

发表评论时出现错误?

来源: 作者: 时间:2006-10-24 Tag: 点击:

描述

回覆文章時出現類似以下的錯誤訊息:

Microsoft VBScript runtime ~ '800a000d'

Type mismatch: '[string: "2005/10/21 U 12:19:"]'

/PJblog/blogcomm.asp, C109

解決方案/具體內容

這是因為ASP在執行時所產生的日期與資料庫查詢用的日期格式不符所致。按照以下方式修改即可。

1.找到 if DateDiff("s",Request.Cookies(CookieName)("memLastPost"),Now())在該行之前加上以下程式碼:


  lastTime = Request.Cookies(CookieName)("memLastPost")
 
  dim NowTime,lastTime
  NowTime = ConvertDateFormat(Now())
 
'//檢查上次po文時間是否有紀錄,若無則指定現在的前n秒(n為系統中設定發文的間隔時間)
If IsDate(lastTime) = False Then
lastTime = DateAdd("s",blog_commTimerout * -1,NowTime)
  '記錄時間資訊,並強制轉換日期型態
Response.Cookies(CookieName)("memLastPost") = ConvertDateFormat(lastTime)
Else
Response.Cookies(CookieName)("memLastPost") = ConvertDateFormat(lastTime)
End IF
2.將原本的
if DateDiff("s",Request.Cookies(CookieName)("memLastPost"),Now())改為
if DateDiff("s",CDate(Request.Cookies(CookieName)("memLastPost")),Now())讓IIS確實得知變數型態,以避免誤判

3.將這個函數放入function.asp中
 Function ConvertDateFormat(dDate)
  Dim d,dt,tm
  d = CDate(dDate)
  dt = FormatDateTime(d,2)
  tm = FormatDateTime(d,4) & ":" & Second(D)
  ConvertDateFormat = dt & " " & tm
 End Function

最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册