Avatar billede fastpoint Nybegynder
24. marts 2005 - 21:35 Der er 27 kommentarer og
1 løsning

dato problemer

hvilke årsager kan der være til denne ikke virker?

<% if rs("storrelse") > 4 AND (DateAdd("M", 1, Date) > datoet  AND  datoto < date())  then %>

i min db har jeg 2 dato felter. datoet og datoto.

for at if betingelsen skal gå op skal datoet være mere end en måned gammel (dvs. oprettet en måned fra dags dato)

datoto skal være mindre end dags dato. en slags udløbs dato.

Det ser rigtigt ud så hvar kan problemet være? der skal rigtigt kun udprintes et felt med disse kriterier men den udprinter 2.
Avatar billede eagleeye Praktikant
24. marts 2005 - 21:44 #1
og du har lagt datoerne ind i de to variable datoet og datoto ?

Når man har med datoer fra recordset kan det være en god ide at bruge CDate så man er sikker på at variablen er af type Date/Time når if sætningen sammenligner:

<% if rs("storrelse") > 4 AND (DateAdd("M", 1, Date) > Cdate(datoet)  AND  Cdate(datoto) < date())  then %>
Avatar billede fastpoint Nybegynder
24. marts 2005 - 21:51 #2
ja det har jeg.. her er datoet og datoto for den som skal udskrives

(taget fra db'en)
datoet
02/03/2005

datoto
06/24/2005

her er den som ikke skal printes ud men gør det
03/24/2005
06/24/2005

og jeg har endnu en som heller ikke skal printes ud men den gør det tilgengæld heller ikke

03/24/2005
09/24/2005

forskellen er bare måneden på de to.

ændrede forresten min kode til den du kom med men det hjalp ikke:(
Avatar billede eagleeye Praktikant
24. marts 2005 - 21:58 #3
Hvilket dato format køre du?
Umiddelbart står datoen som enelsk, mm/dd/yyyy
Avatar billede fastpoint Nybegynder
24. marts 2005 - 22:00 #4
hmmm.. hvad gør man ved det? når jeg hiver det op i en form står der 24-03-2005 :|
I databasen er begge kolonner sat til "Date/Time"
Avatar billede eagleeye Praktikant
24. marts 2005 - 22:01 #5
Prøv at sætte Session.LCID = 1030 i toppen af din kode:
<% session.LCID=1030 %>
Avatar billede fastpoint Nybegynder
24. marts 2005 - 22:04 #6
det hjalp ikke:(
Avatar billede eagleeye Praktikant
24. marts 2005 - 22:07 #7
Angående:  DateAdd("M", 1, Date)  så skal det vist være -1 når datoet skal være en måned gammel:

DateAdd("M", -1, Date)
Avatar billede fastpoint Nybegynder
24. marts 2005 - 22:10 #8
hmm det hjalp heller ikke:( ved kan være problemet? spørg endelig løs!
og hvis du vil noget bestemt så sig til! kan det være min if sætning? eller er det pga. den ikke kan finde ud af det når det er en dansk server?
Avatar billede eagleeye Praktikant
24. marts 2005 - 22:11 #9
Hvad skal den vise?
Avatar billede eagleeye Praktikant
24. marts 2005 - 22:13 #10
Jeg kan spørge på en anden måde.

Er du sikker på din tekst beskrivese er rigtig det skal ikke være: Vise de poster hvor datoet er større end dags dato minus 1 måned og hvor datoto er større end dags dato.
Avatar billede fastpoint Nybegynder
24. marts 2005 - 22:23 #11
okay jeg er sikkert forvirret:) må du undskylde:)

Meningen med de to kolonner er at der i datoet bliver gemt dato'en for hvornår indholdet er blevet gemt.. datoto gemmer så på en udløbs dato.

Sagt med forretningsord er det jeg prøver at lave for at noget skal blive vist på hjemmesiden skal der mindst være gået en måned fra da det blev oprettet og så må udløbsdatoen ikke være overskredet (datoto)
Avatar billede fastpoint Nybegynder
24. marts 2005 - 22:26 #12
I dag melder jeg mine side til databasen (datoet) om en måned er den blevet bearbejdet og og den vil blive vist på siden, men først om en måned. Siden vil blive vist helt indtil udløbsdatoen (datoto)

håber det var mere forståeligt eller i det mindste forklare koden jeg lagde ud med:)
Avatar billede eagleeye Praktikant
24. marts 2005 - 22:27 #13
ok så prøv at rette den til:

<% if rs("storrelse") > 4 AND (DateAdd("M", 1, datoet) > date()  AND  datoto > date())  then %>
Avatar billede eagleeye Praktikant
24. marts 2005 - 22:30 #14
arh sådan her vendte en > forkert ved datoet:

<% if rs("storrelse") > 4 AND (DateAdd("M", 1, datoet) < date()  AND  datoto > date())  then %>
Avatar billede fastpoint Nybegynder
24. marts 2005 - 22:36 #15
øv troede lige:) men nu gik if betingelsen slet ikke op med nogen af dem
her er hele koden.. faktisk det vi lavede tidligere

<% if rs("storrelse") > 4 AND (DateAdd("M", 1, datoet) < date()  AND  datoto > date())  then %>
<font face="Courier New, Courier, mono" size="2"><a href="vis.asp?rid=<%= rs("id") %>&sp=<% = rs("navn") %>"><font size="<%=rs("storrelse")%>"><b><% = rs("navn") %></b></font></a></font>
<%else%>
<font face="Courier New, Courier, mono" size="2"><a href="vis.asp?rid=<%= rs("id") %>&sp=<% = rs("navn") %>"><font size="2"><% = rs("navn") %></font></a></font>
<%end if%>
Avatar billede eagleeye Praktikant
24. marts 2005 - 22:48 #16
Det lyder jo lidt mystisk. Har du prøve også at hvade CDate om de to variable.

Er storrelse større end 4 for alle posterne?

Hvis du udksriver Date() hvad skriver den så?
Avatar billede fastpoint Nybegynder
24. marts 2005 - 22:54 #17
eagleeye der fik du mig!

<% (DateAdd("M", 1, Date) > Cdate(datoet)  AND  Cdate(datoto) < date())  then %>

jeg prøver lige at lege lidt med det. skal gerne have den med størrelse med også så det må være noget med endnu en if sætning. råber op hvis jeg ikke kan det:)
Avatar billede fastpoint Nybegynder
24. marts 2005 - 23:00 #18
sorry my bad! det virkede ikke:/
jeg udskriver lige Date() og se hvad den siger
Avatar billede fastpoint Nybegynder
24. marts 2005 - 23:02 #19
den udskrev forresten kun if sætningen og ikke else som sidst
Avatar billede fastpoint Nybegynder
24. marts 2005 - 23:05 #20
date() udskrive 24-03-2005
Avatar billede eagleeye Praktikant
24. marts 2005 - 23:08 #21
Ok, det ser jo fint ud.

Er kolonnen i databasen er af typen date/time?
Avatar billede fastpoint Nybegynder
24. marts 2005 - 23:13 #22
præcist:)! det fik jeg af vide jeg skulle vælge
Avatar billede eagleeye Praktikant
24. marts 2005 - 23:15 #23
Ja det er også det bedste, det skulle give mindst problemmer.. hehe.

Nu spørger jeg måske dumt igen :) Men du har to linjer hvor datoet og datoto bliver sat?
Det er bare fordi alle andre steder bruger du rs("xxx") og ikke en variable.


Prøv evt. at rette if sætningen til dette så det kun er med datoerne:

<% if (DateAdd("M", -1, date) > datoet  AND  datoto > date())  then %>
Avatar billede fastpoint Nybegynder
24. marts 2005 - 23:22 #24
datoet og datoto bliver ikke sat på denne asp side jeg gik ud fra man bare kunne bruge navnene på dem nu hvor man gennemløber en løkke alligevel.  datoet og datoto skal også være rs() kan jeg høre på det hele men vil den forstå det?
Avatar billede eagleeye Praktikant
24. marts 2005 - 23:24 #25
Ok, så prøv at rette det til dette så den bruger kolonnerne datoet og datoto fra recordsetet:


<% if rs("storrelse") > 4 AND (DateAdd("M", -1, date) > CDate(rs("datoet")) AND  CDate(rs("datoto")) > date())  then %>
Avatar billede fastpoint Nybegynder
24. marts 2005 - 23:28 #26
Det virker:o)! jeg kan se det dog bliver nødvendigt med endnu en if sætning hvor if rs("storrelse") > 4 skal være if rs("storrelse") < 4

dvs
<% if rs("storrelse") < 4 AND (DateAdd("M", -1, date) > CDate(rs("datoet")) AND  CDate(rs("datoto")) > date())  then %>

så skal den printe denne linje ud.

<font face="Courier New, Courier, mono" size="2"><a href="vis.asp?rid=<%= rs("id") %>&sp=<% = rs("navn") %>"><font size="<%=rs("storrelse")%>"><% = rs("navn") %></font></a></font>

hvordan gør man lige det? hele koden er som sagt denne

<% if rs("storrelse") > 4 AND (DateAdd("M", -1, date) > CDate(rs("datoet")) AND  CDate(rs("datoto")) > date())  then %>
<font face="Courier New, Courier, mono" size="2"><a href="vis.asp?rid=<%= rs("id") %>&sp=<% = rs("navn") %>"><font size="<%=rs("storrelse")%>"><b><% = rs("navn") %></b></font></a></font>
<%else%>
<font face="Courier New, Courier, mono" size="2"><a href="vis.asp?rid=<%= rs("id") %>&sp=<% = rs("navn") %>"><font size="2"><% = rs("navn") %></font></a></font>
<%end if%>


og lig et svar!! du skal have point:)!
Avatar billede eagleeye Praktikant
24. marts 2005 - 23:32 #27
Du kan prøve sådan her:


<% if (DateAdd("M", -1, date) > CDate(rs("datoet")) AND  CDate(rs("datoto")) > date())  then %>
  <% if rs("storrelse") > 4 then %>
<font face="Courier New, Courier, mono" size="2"><a href="vis.asp?rid=<%= rs("id") %>&sp=<% = rs("navn") %>"><font size="<%=rs("storrelse")%>"><b><% = rs("navn") %></b></font></a></font>
  <%else%>
<font face="Courier New, Courier, mono" size="2"><a href="vis.asp?rid=<%= rs("id") %>&sp=<% = rs("navn") %>"><font size="<%=rs("storrelse")%>"><% = rs("navn") %></font></a></font>
  <%end if%>
<%else%>
<font face="Courier New, Courier, mono" size="2"><a href="vis.asp?rid=<%= rs("id") %>&sp=<% = rs("navn") %>"><font size="2"><% = rs("navn") %></font></a></font>
<%end if%>
Avatar billede fastpoint Nybegynder
24. marts 2005 - 23:42 #28
Tak for hjælpen:)!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester