Avatar billede l_otto Nybegynder
26. februar 2007 - 09:00 Der er 37 kommentarer og
1 løsning

evige dato problem

jeg har et felt der er varchar i min mysql db hvor jeg indsætter datoer i. på dansk format 27.02.2007

men nu vil jeg gerne vise data som er ældre end i dag eller nyere end i dag og så kan den ikke finde ud af det..

hmm så kom problemmet nu tror den at 03.03.2007 er mindre end 27.02.2007

hvordan kommer jeg uden om den..  jeg vil gerne vise denne her rigtigt
<%
dim maaned, dag, aar, dato
maaned = month(date)
dag = day(date)
aar = year(date)
dato = dag & "-" & maaned & "-" & aar
%>
strSQL = "Select DISTINCT  herlev From bestilling where herlev >= '" & dato & "' and pris='1'"

men den kan ikke finde ud af hvilke datoer der er ældre end i dag...

for den tror jo at 27.02.2007 er større end 03.04.2007

Er der nogen vej rundt om det?
Avatar billede kalp Novice
26. februar 2007 - 09:48 #1
strSQL = "Select DISTINCT  herlev From bestilling where herlev >= '" & CDATE(dato) & "' and pris='1'"
Avatar billede l_otto Nybegynder
26. februar 2007 - 10:12 #2
sorry den viser ikke den vagt der har 'herlev' = 03.03.2007

den tror stadig af den dato er mindre (yngre)  end i dag...
Avatar billede kalp Novice
26. februar 2007 - 10:22 #3
strSQL = "Select DISTINCT  herlev From bestilling where herlev >= '" & DDate(dato) & "' and pris='1'"

Response.write(strSQL)
Response.end

og post det den udskriver her.. så kan vi se hvordan det ser ud
Avatar billede l_otto Nybegynder
26. februar 2007 - 10:23 #4
det vil den ikke:-)

Sun ONE ASP VBScript runtime (0x800A000D)
Type mismatch

strSQL = "Select DISTINCT  herlev From bestilling where herlev >= '" & DDate(dato) & "' and pris='1'"
Set rs = DataConn.Execute(strSQL)
Response.write(strSQL)
Response.end
Avatar billede kalp Novice
26. februar 2007 - 10:27 #5
strSQL = "Select DISTINCT  herlev From bestilling where herlev >= '" & CDATE(dato) & "' and pris='1'"
Response.write(strSQL)
Response.end

uden
Set rs = DataConn.Execute(strSQL)

vi skal bare se hvordan det ser ud i SQL.
Avatar billede l_otto Nybegynder
26. februar 2007 - 10:37 #6
Select DISTINCT herlev From bestilling where herlev >= '2/26/2007' and pris='1'

så den læser den som den US dato version det er derfor den ikke kan finde ud af det
Avatar billede kalp Novice
26. februar 2007 - 10:48 #7
smid det her i toppen af din ASP side og prøv igen.

<% session.LCID=1030 %>

i toppen. og din sql sådan her igen.

strSQL = "Select DISTINCT  herlev From bestilling where herlev >= '" & CDATE(dato) & "' and pris='1'"
Avatar billede l_otto Nybegynder
26. februar 2007 - 10:50 #8
Session object, ASP 0219 (0x80004005)
The specified LCID is not available.
/admin/default.asp, line 1
Avatar billede kalp Novice
26. februar 2007 - 10:53 #9
hmm.. kedeligt:) og underligt at serveren ikke understøtter dansk:P

tilføj dette istedet..

<%
Function FormatDT(aTime,FormatStr)
str = lcase(formatstr)
str = Replace(str,"yyyy",Year(aTime))
str = Replace(str,"dd",Day(aTime))
str = Replace(str,"mm",Month(aTime))
str = Replace(str,"hh",Hour(aTime))
str = Replace(str,"nn",Minute(aTime))
str = Replace(str,"ss",Second(aTime))
FormatDT = str
end function
%>


og din sql sådan her.

strSQL = "Select DISTINCT  herlev From bestilling where herlev >= '" & FormatDT(CDATE(dato),"MM/DD/YYYY HH:NN:SS") & "' and pris='1'"
Avatar billede l_otto Nybegynder
26. februar 2007 - 10:56 #10
nu fejler den ikke men viser stadig ikke 03.03.2007 vagten :-( men vi er tæt på kan jeg mærke...

det er hos b-one jeg har min mysql.
Avatar billede kalp Novice
26. februar 2007 - 10:57 #11
lad os se hvordan dato'en ser ud:)

strSQL = "Select DISTINCT  herlev From bestilling where herlev >= '" & FormatDT(CDATE(dato),"MM/DD/YYYY HH:NN:SS") & "' and pris='1'"
Response.write(strSQL)
Response.end
Avatar billede l_otto Nybegynder
26. februar 2007 - 11:02 #12
Select DISTINCT herlev From bestilling where herlev >= '12/30/1899 0:0:0' and pris='1'
Avatar billede kalp Novice
26. februar 2007 - 11:09 #13
stadig mærkeligt dato format:) årstallet passer ikke.

forstår slet ikke hvilken version de kører siden nedenstående ikke virker.
<% session.LCID=1030 %>

når men prøv lige

strSQL = "Select DISTINCT  herlev From bestilling where DATE_FORMAT(herlev,'%d %m %m') >= '" & dato & "' and pris='1'"

og ellers bare luk her og spørg i mysql katagorien hvordan du formattere din dato "herlev" til amerikansk dato format, men du kan lige prøve min SQL.. det skulle gerne være sådan.
Avatar billede kalp Novice
26. februar 2007 - 11:09 #14
strSQL = "Select DISTINCT  herlev From bestilling where DATE_FORMAT(herlev,'%d %m %Y') >= '" & dato & "' and pris='1'"

sorry sådan
Avatar billede l_otto Nybegynder
26. februar 2007 - 11:12 #15
sorry den virker heller ikke.... er der ikke nogen måde vi kan snyde den på ?
Avatar billede kalp Novice
26. februar 2007 - 11:14 #16
strSQL = "Select DISTINCT  herlev From bestilling where DATE_FORMAT(herlev,'%d %m %Y') >= '" & CDate(dato) & "' and pris='1'"

Vi glemte lige at konvertere din dato til en rigtig dato.. det er jo bare en string..  så test igen:)
Avatar billede l_otto Nybegynder
26. februar 2007 - 11:17 #17
hmm så viser den slet ikke nogen ? æv
Avatar billede kalp Novice
26. februar 2007 - 11:17 #18
ahh... vent.. vil nok ikke virke når din dato i databasene er en varchar:S

så er det måske nemt nok!

strSQL = "Select DISTINCT  herlev From bestilling where str_to_date(herlev,'%d/%m/%Y') >= '" & CDate(dato) & "' and pris='1'"
Avatar billede kalp Novice
26. februar 2007 - 11:19 #19
og denne er US dato

strSQL = "Select DISTINCT  herlev From bestilling where str_to_date(herlev,'%m/%d/%Y') >= '" & CDate(dato) & "' and pris='1'"
Avatar billede kalp Novice
26. februar 2007 - 11:23 #20
Denne SQL matcher 100% den dato du udskrev tidligere.. så det skal virke.
'2/26/2007'


strSQL = "Select DISTINCT  herlev From bestilling where str_to_date(herlev,'%c/%d/%Y') >= '" & CDate(dato) & "' and pris='1'"
Avatar billede l_otto Nybegynder
28. februar 2007 - 12:00 #21
jeg er lige ved at have den.. men når den viser datoen ser den sådan her ud 2/27/2007 og jeg skal have den til at vise den sådan her 2007-02-27

hvordan gør vi det ?

<TR>
    <TD>Vagt dato:</TD>
    <TD><input type="text" name="herlev" value="<%=rs("herlev")%>" class="Formindhold" size="8"></TD>
</TR>
Avatar billede kalp Novice
28. februar 2007 - 12:05 #22
hvis herlev er blevet lavet til Dato format i din DB skriver du bare..

Year(rs("herlev")) for at få år
Month(rs("herlev")) for at få måned
Day(rs("herlev"))  for at få dag
Avatar billede l_otto Nybegynder
28. februar 2007 - 12:33 #23
<%
Year(rs("herlev"))
Month(rs("herlev"))
Day(rs("herlev")) 
%>

det vil den ikke hvordan skal jeg sætte det ind ?
Avatar billede kalp Novice
28. februar 2007 - 12:46 #24
<%
Response.write(Year(rs("herlev")))
Response.write(Month(rs("herlev")))
Response.write(Day(rs("herlev")))
%>

udskriver det der ikke værdierne? hvis det gør kan man sætte dem sammen til det output du vil have bagefter.
Avatar billede l_otto Nybegynder
28. februar 2007 - 12:52 #25
altså det er når den viser det her

<TD><input type="text" name="herlev" value="<%=rs("herlev")%>" class="Formindhold" size="8"></TD>


den skal vise det 2007-02-27
Avatar billede kalp Novice
28. februar 2007 - 12:57 #26
yep, men det andet er for at se om vi kan hive dato måned og  dag ud af din dato for så bagefter at sætte den sammen som vi selv vil have den.
Avatar billede l_otto Nybegynder
28. februar 2007 - 13:03 #27
2007228

så skal vi have - i mellem :-)
Avatar billede kalp Novice
28. februar 2007 - 13:12 #28
<TD><input type="text" name="herlev" value="<% Response.write(Year(rs("herlev"))-" & Month(rs("herlev")))- &" Day(rs("herlev")))  %>" class="Formindhold" size="8"></TD>

ved sgu ikke om det er rigtigt man sætter tekst sammen sådan:)
Avatar billede l_otto Nybegynder
28. februar 2007 - 14:41 #29
Error Type:
Sun ONE ASP VBScript compilation (0x800A03EA)
Syntax error, unexpected "identifier"
Avatar billede kalp Novice
28. februar 2007 - 14:52 #30
<% Response.write(" & Year(rs("herlev") & "-" & Month(rs("herlev")) & "-" & Day(rs("herlev")) & ") %>

Der irriterende er at det ikke engang er svært, men bare fordi jeg aldrig gør det:o)
men håber den går med til det der.
Avatar billede l_otto Nybegynder
28. februar 2007 - 15:10 #31
samme fejl:-)

Error Type:
Sun ONE ASP VBScript compilation (0x800A03EE)
Syntax error, unexpected "identifier", expecting ")"
Avatar billede kalp Novice
28. februar 2007 - 15:23 #32
<%
dim maaned, dag, aar, dato
maaned = month(date)
dag = day(date)
aar = year(date)
dato = aar & "-" & maaned & "-" & dag
%>

<TD><input type="text" name="herlev" value="<% response.write(dato) %>" class="Formindhold" size="8"></TD>


og et svar:o) det må sgu virke.
Avatar billede l_otto Nybegynder
28. februar 2007 - 15:37 #33
jep og 1000 tak...
Avatar billede kalp Novice
28. februar 2007 - 15:42 #34
selv tak:) og godt det virkede:o)
Avatar billede l_otto Nybegynder
01. marts 2007 - 07:47 #35
men hov hov den viker ikke alligevel... den viser det rigtigt men den sætter bare dags dato ind... den skal jo sætte 'herlev' ind....
Avatar billede kalp Novice
01. marts 2007 - 08:42 #36
<%
dim maaned, dag, aar, dato
maaned = month(rs("herlev"))
dag = day(rs("herlev"))
aar = year(rs("herlev"))
dato = aar & "-" & maaned & "-" & dag
%>



<TD><input type="text" name="herlev" value="<% response.write(dato) %>" class="Formindhold" size="8"></TD>
Avatar billede l_otto Nybegynder
01. marts 2007 - 09:21 #37
yes sir.. tak
Avatar billede kalp Novice
01. marts 2007 - 09:28 #38
;o)
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