---
title: "Checka med db om datum existerar"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/68615-checka-med-db-om-datum-existerar"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Lazerzubb"
published: "2003-02-18T10:49:18.000Z"
updated: "2003-02-21T17:53:59.000Z"
replies: 3
views: 183
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/68615-checka-med-db-om-datum-existerar"
---

# Checka med db om datum existerar

## #1 — Lazerzubb, 2003-02-18T10:49Z

Hittade en kalender på aspsidan sent igår kväll, och modifierade koden lite, så istället
för att använda 3 separate kolumner använder jag bara ett datum fält (Access)

Men jag vet inte hur jag ska ändra denna kod för att det ska funka.

I databasen existerar bara ID och datum (vilket är ett DATE field, 02/07/2003 etc)
Jag vet inte hur jag byter ut den tidigare checken för dd (dag) mm (måndad) yyyy (år) till att checka med "datum" 
(Är det bäst och använda 3 separata kolumner eller ska jag bara använda 1?)

Tack på förhand.

```
<%
Function getMonth(monthNr)

	Select Case monthNr
		Case 1 manad = "Januari"
		Case 2 manad = "Februari"
		Case 3 manad = "Mars"
		Case 4 manad = "April"
		Case 5 manad = "Maj"
		Case 6 manad = "Juni"
		Case 7 manad = "Juli"
		Case 8 manad = "Augusti"
		Case 9 manad = "September"
		Case 10 manad = "Oktober"
		Case 11 manad = "November"
		Case 12	manad = "December"
	End Select
	
	getMonth = manad
	
End Function

Function getDays(monthNr)

	Select Case monthNr
		Case 1 days = 31
		Case 2 days = 28
		Case 3 days = 31
		Case 4 days = 30
		Case 5 days = 31
		Case 6 days = 30
		Case 7 days = 31
		Case 8 days = 31
		Case 9 days = 30
		Case 10 days = 31
		Case 11 days = 30
		Case 12	days = 31
	End Select
	
	getDays = days
	
End Function

Function getNext(s)
' s = sign (eg +,-)
' am = aktuell månad
' ay = aktuellt år
	
	If s = "+" Then
		If mm = 12 Then
			am = 1
			ay = yyyy + 1
		Else
			am = mm + 1
			ay = yyyy
		End If
	Else
		If mm = 1 Then
			am = 12
			ay = yyyy - 1
		Else
			am = mm - 1
			ay = yyyy
		End If
	End if
	
	getNext = am & "&y=" & ay
	
End Function

' Plocka fram aktuellt datum
datum	= Date
aManad 	= Month(datum)
aDag	= Day(datum)
aAr		= Year(datum)

' Vilken månad skall visas?
If Request.QueryString("m") <> "" Then
	mm 		= Request.QueryString("m")
	yyyy 	= Request.QueryString("y")
Else
	mm 		= Month(datum)
	yyyy 	= Year(datum)
End If

' Hur många rutor skall skippas första veckan?
skip 	=  DatePart("w", mm & "/1-"&yyyy, vbMonday) - 1

%>

<SCRIPT LANGUAGE="javascript">
<!--
function popup(url,width,height)
{
	unik=new Date();
	unik=unik.getSeconds()+"_"+unik.getMinutes()+"_"+unik.getHours();
	stuff = "toolbar=no,menubar=no,scrollbars=yes,resizable=no,width= " +width + ", height = " +height
	window.open(url , unik , stuff );
}
//-->
</SCRIPT>
```

Och

```
        <%
		set Rs = Server.CreateObject("ADODB.Recordset") 
		RS.ActiveConnection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:/kalender.mdb" 
		RS.Source = "Select DISTINCT(dd) From handelser Where mm = " & mm & " And yyyy = " & yyyy & " Order By dd"
		RS.Open()

		dag = 1 - skip 
		x = 0 
		Do Until x > (getDays(mm) + skip) / 7 

			Response.Write "<tr>" 

			For y = 1 To 7 

				bgColor = "#FFFFFF" 
				If not RS.EOF Then 
					If int(dag) = int(RS("dd")) Then 
						bgColor = "#D3F1F7" 
						skriv = "true"
						
						'RS.MoveNext 
					End If 
				End If
				
				If aDag&aManad&aAr = dag&mm&yyyy Then
					bgColor = "#4682B4"
				End If

				If dag > 0 AND dag < getDays(mm)+1 Then 
					borderColor = "#4682B4" 
				Else 
					borderColor = "#FFFFFF" 
				End If 

				Response.Write "<td width='25'>" 
				Response.Write "<table width = '100%' border='0' cellspacing='0' cellpadding='1' bgcolor='" &borderColor &"'>"_ 
						& "<tr><td>" 
				Response.Write "<table width = '100%' border='0' cellspacing='0' cellpadding='1' bgcolor='" & bgColor & "'>"_ 
						& "<tr><td>" 

				Response.Write "<div align='center'><font size='1' face='Verdana, Arial, Helvetica, sans-serif'>" 

				If dag > 0 And dag < getDays(mm)+1 Then 
					If skriv = "true" Then
						Response.Write "" & dag & ""
						RS.MoveNext
						skriv = "false"
					Else
						Response.Write dag
					End if
				End If 

				Response.Write "</font></div></td></tr></table></td></tr></table></td>" 

				dag = dag + 1 

			Next 
			Response.Write "</tr>" 

			x = x + 1 
		Loop 

		RS.Close() 
		%>
        <tr bgcolor="#CCCCCC"> 
          <td width="25" bgcolor="#CCCCCC"> 
            <div align="center"><a href="<%=sidan%>?m=<%=getNext("-")%>"><img src="left.gif" width="15" height="10" border="0"></a></div>
          </td>
          <td colspan="5"> 
            <div align="center"><font size="1" face="Verdana, Arial, Helvetica, sans-serif"> 
              <%Response.Write "<b>" & getMonth(mm) & " (" & yyyy & ")</b>"%>
              </font></div>
          </td>
          <td width="25"> 
            <div align="center"><a href="<%=sidan%>?m=<%=getNext("+")%>"><img src="right.gif" width="15" height="10" border="0"></a></div>
```

Permalänk: https://www.webforum.nu/p/68615

## #2 — Lazerzubb, 2003-02-21T15:31Z

Går det att göra?

Permalänk: https://www.webforum.nu/p/958376

## #3 — Engine^, 2003-02-21T17:20Z

hmmm... du kanske ska ta och titta lite närmare på funktionerna [FormatDateTime()](http://www.devguru.com/Technologies/vbscript/quickref/formatdatetime.html), [CDate()](http://www.devguru.com/Technologies/vbscript/quickref/cdate.html), [Day()](http://www.devguru.com/Technologies/vbscript/quickref/day.html), [Month()](http://www.devguru.com/Technologies/vbscript/quickref/month.html) och [Year()](http://www.devguru.com/Technologies/vbscript/quickref/year.html)

Och, höll på att glömma, [DateAdd()](http://www.devguru.com/Technologies/vbscript/quickref/dateadd.html).

Jag kollade inte igenom din kod något, eftersom jag tyckte det var massa onödigheter i den. Hursomhelst, kolla igenom dessa funktioner, så inser du snabbt att det räcker alldeles utmärkt med en kolumn.

Permalänk: https://www.webforum.nu/p/958442

## #4 — Lazerzubb, 2003-02-21T17:53Z

Tack för länkarna, problemet är inte längre hur jag sparar datumet, utan hur jag jämför datumen som visas i kalendern med datumen i databasen, det görs med koden ovan, men då existerar 3 kolumner, nu bara en kolumn, vilket är en "date" kolumn.
Så om datum som visas finns i databasen, bakgrunder ändras till en annan färg, vilket gör redan i ovanstående kod (Men fortfarande används 3 kolumner och jag vill bara använda en)

Permalänk: https://www.webforum.nu/p/958465

---

Tråden på webben: https://www.webforum.nu/amne/asp/68615-checka-med-db-om-datum-existerar
