webForumDet fria alternativet

Datumjämförelse

11 svar · 215 visningar · startad av Addeladde

AddeladdeMedlem sedan jan. 20013 406 inlägg
#1

Varför funkar inte den här datumjämförelsen:

Set lankRS = Server.CreateObject( "ADODB.Recordset" )
lankRS.ActiveConnection = Con2
lankRS.CursorType = 3
lankRS.Open "SELECT * FROM sidor WHERE sida_id=50"
IF NOT lankRS.EOF THEN

  IF date < lankRS( "sida_datum_start" ) OR(date > lankRS( "sida_datum_slut" )) THEN %>
    <a href='50.asp' target=''>Nyheter</a>
<%
    END IF
END IF
lankRS.close
set lankRS = nothing

Det här fungerar inte heller

<%
Set lankRS = Server.CreateObject( "ADODB.Recordset" )
lankRS.ActiveConnection = Con2
lankRS.CursorType = 3
lankRS.Open "SELECT * FROM sidor WHERE sida_id=50"
IF NOT lankRS.EOF THEN

  IF date < "#"&lankRS( "sida_datum_start" )&"#" OR(date > "#"&lankRS( "sida_datum_slut" )&"#") THEN %>
    <a href='50.asp' target=''>Nyheter</a>
<% 
  END IF
END IF
lankRS.close
set lankRS = nothing
%>
icaaqMedlem sedan okt. 20005 273 inlägg
#2

Testa att använda dig av

[red]
Cdate()
[/red]

på värdena från db:n

mvh icaaq

AddeladdeMedlem sedan jan. 20013 406 inlägg
#3

Datumjämförelserna blir inte rätt

@ndersMedlem sedan juni 200032 969 inlägg
#4

Hur ser din kod med subtypskonvertering enl. icaaqs förslag ut?

icaaqMedlem sedan okt. 20005 273 inlägg
#5
[red]<%
Set lankRS = Server.CreateObject( "ADODB.Recordset" )
lankRS.ActiveConnection = Con2
lankRS.CursorType = 3
lankRS.Open "SELECT * FROM sidor WHERE sida_id=50"
IF NOT lankRS.EOF THEN

  IF date() < Cdate(lankRS("sida_datum_start")) OR date() > Cdate(lankRS("sida_datum_slut")) THEN %>
    <a href='50.asp' target=''>Nyheter</a>
<% 
  END IF
END IF
lankRS.close
set lankRS = nothing
%>
[/red]

Borde funka
mvh icaaq

AddeladdeMedlem sedan jan. 20013 406 inlägg
#6
<% 
Set lankRS = Server.CreateObject( "ADODB.Recordset" )
lankRS.ActiveConnection = Con2
lankRS.CursorType = 3
lankRS.Open "SELECT * FROM sidor WHERE sida_id=50"
IF NOT lankRS.EOF THEN
  IF date > cDate(lankRS( "sida_datum_start" )) OR(date < cDate(lankRS( "sida_datum_slut" ))) THEN %>
    <a href='50.asp' target=''>Nyheter</a>
<% 
  END IF
END IF
lankRS.close
set lankRS = nothing
%>

Det koden ovanför ska göra är att skriva ut länken om sida_datum_start har varit och om sida_datum_slut inte varit.

icaaqMedlem sedan okt. 20005 273 inlägg
#7

Du har två parenteser som sitter konstigt(tycker jag)Har du testat mitt förslag?

[red]<%
Set lankRS = Server.CreateObject( "ADODB.Recordset" )
lankRS.ActiveConnection = Con2
lankRS.CursorType = 3
lankRS.Open "SELECT * FROM sidor WHERE sida_id=50"
IF NOT lankRS.EOF THEN

  IF date() < Cdate(lankRS("sida_datum_start")) OR date() > Cdate(lankRS("sida_datum_slut")) THEN %>
    <a href='50.asp' target=''>Nyheter</a>
<% 
  END IF
END IF
lankRS.close
set lankRS = nothing
%>
[/red]
AddeladdeMedlem sedan jan. 20013 406 inlägg
#8

icaaq skrev:

[red]<%
Set lankRS = Server.CreateObject( "ADODB.Recordset" )
lankRS.ActiveConnection = Con2
lankRS.CursorType = 3
lankRS.Open "SELECT * FROM sidor WHERE sida_id=50"
IF NOT lankRS.EOF THEN

  IF date() < Cdate(lankRS("sida_datum_start")) OR date() > Cdate(lankRS("sida_datum_slut")) THEN %>
    <a href='50.asp' target=''>Nyheter</a>
<% 
  END IF
END IF
lankRS.close
set lankRS = nothing
%>
[/red]

Borde funka
mvh icaaq

Nu funkar det när jag lade till () efter date och så ändrade jag OR till AND

icaaqMedlem sedan okt. 20005 273 inlägg
#9

Ahhh va bra :)

mvh icaaq

AddeladdeMedlem sedan jan. 20013 406 inlägg
#10

Tack så mycket för hjälpen

icaaqMedlem sedan okt. 20005 273 inlägg
#11

Men du borde kunna göra den jämförelsen i sql-satsen istället ......men det är ett uppdrag för LarsG kanske...

mvh icaaq

AddeladdeMedlem sedan jan. 20013 406 inlägg
#12

Jo det skulle jag kunna och det tror jag till och med att jag skulle kunna greja själv men nu vill jag göra så som jag gjort.

134 ms totalt · 3 externa anrop · v20260731065814-full.fb544a5a
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)