/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Vis kun aktuelle og kommende fra database
Fra : Dennis Møller


Dato : 24-07-03 00:58

Hej endnu en gang!
Det er skam med vilje jeg har lavet to tråde - det ene er et råb
om hjælp til at udbedre en fejl, denne er - også et råb men - om
et svar på et spørgsmål... :D

Jeg er ved at lave et arrangement-system og vil gerne have at kun
aktuelle og kommende arrangementer bliver vist, altså noget med:
Date <= "datoen fra databasen"
Men jeg kan ikke få det eksempel, jeg har fundet, til at virke -
selvom begge formater er 14-07-2003 (som i dag):

strSQL = "Select * from arrangementer Where dato <= " & Day(Date)
& "-" & Month(Date) & "-" & Year(Date)

Det der var fra SQL funktionen, der går ud og læser i databasen.
Nedenunder kommer selvfølgelig udskrivelser af værdierne.
Her er siden:

<html>

<head>
<title>Ingstrup Mølle Fiskepark</title>
<link rel="Stylesheet" type="text/css" href="./style.css">
</head>

<body topmargin="0">
<table border="0" width="590" align="left" cellspacing="0"
cellpadding="0">
   <tr>
    <td width="100%">

<h1 align="center"><br>
Arrangementer</h1>
<table border="0" width="530" cellspacing="3"
cellpadding="0" align="right">
<%
' Databaseforbindelse - husk at angive sti til din database
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("./cgi-bin/database.mdb")
Conn.Open DSN

' SQL forespørgsel
strSQL = "Select * from arrangementer Where dato > " & Day(Date)
& "-" & Month(Date) & "-" & Year(Date)
' Udfør forespørgsel (rs indeholder nu resultatet)
Set rs = Conn.Execute(strSQL)

If rs.EOF OR rs.BOF Then
Response.Write "<p>Der er ingen arrangementer i
øjeblikket!</p>"

else

' Gennemløb Recordset (rs) med en løkke
Do

' Udskriv værdien af kolonnen Fornavn
Response.Write "<tr><td colspan='2'><h2>" & rs("overskrift") &
"</td></tr>"
Response.Write "<tr><td width='175'
valign='top'><p><b>&nbsp;&nbsp;" & rs("dato") &
"</b><br>&nbsp;&nbsp;Kl. " & rs("klokken")

& "</p></td>"
Response.Write "<td width='355' valign='top'><p>" &
rs("beskrivelse") & "</p></td></tr>"
Response.Write "<tr><td valign='top'
colspan='2'><br><br></td></tr>"

' Gå til næste Record i rs
rs.MoveNext

' Fortsæt indtil rs er gennemløbet (EOF = End Of File)
Loop While Not rs.EOF

End if

' Luk databaseforbindelse
Conn.Close
Set Conn = Nothing
%>
</table>

    </td>
   </tr>
</table>
</body>

</html>


Hvad findes der ellers af metoder?
På forhånd tak - Dennis.

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Dennis Møller (24-07-2003)
Kommentar
Fra : Dennis Møller


Dato : 24-07-03 01:05

Jeg ved godt at der i min tråd under "Her er siden:" står:

strSQL = "Select * from arrangementer Where dato > " & Day(Date) &
"-" & Month(Date) & "-" & Year(Date)

Altså et større-end tegn, i stedet for et mindre-end-eller-lig-med
tegn, som jeg havde skrevet der skulle stå.
Det er simpelthen fordi jeg har leget med det og glemt at skrive det
tilbage inden jeg postede tråden.
Det skal måske lige nævnes at hvis det står mindre-end (<) vises går
den videre til min "else". Men hvis der står større-end(>) vises alt
fra databasen - underligt, hvis du spørger mig!

Håber stadig på svar... :D
Dennis.

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Jørgen Müller (24-07-2003)
Kommentar
Fra : Jørgen Müller


Dato : 24-07-03 01:36

Dennis Møller skrev:
>strSQL = "Select * from arrangementer Where dato > " & Day(Date) &
>"-" & Month(Date) & "-" & Year(Date)

Afhængig af hvilken database du benytter kan du i acces bruge
strSQL = "Select * from arrangementer WHERE dato >= " & Date

Date giver dig dags dato

Det er en dårlig skik at bruge * , skriv hellere hvilke felter du vil have
ud, det gør også fejlfinding nemmere ligesom du har nemmere ved at udskrive
felterne, da du i sql-en kan læse navnene
arrangementer.dato o.s.v.

Endvidere er det muligt, at du skal bruge [] omkring dato da det ligger
meget tæt op af det engelske date og hvis du benytter en dansk version er
det samme som det reserverede ord dato
arrangementer.[dato]
--
Med Venlig Hilsen
Jørgen Müller



Ivan D-J (24-07-2003)
Kommentar
Fra : Ivan D-J


Dato : 24-07-03 07:20


"Dennis Møller" <djm@dennermanner.dk> skrev i en meddelelse
news:bfn7db$kot$1@sunsite.dk...
> Hej endnu en gang!
> Det er skam med vilje jeg har lavet to tråde - det ene er et råb
> om hjælp til at udbedre en fejl, denne er - også et råb men - om
> et svar på et spørgsmål... :D
>
> Jeg er ved at lave et arrangement-system og vil gerne have at kun
> aktuelle og kommende arrangementer bliver vist, altså noget med:
> Date <= "datoen fra databasen"
> Men jeg kan ikke få det eksempel, jeg har fundet, til at virke -
> selvom begge formater er 14-07-2003 (som i dag):
>
> strSQL = "Select * from arrangementer Where dato <= " & Day(Date)
> & "-" & Month(Date) & "-" & Year(Date)
>
> Det der var fra SQL funktionen, der går ud og læser i databasen.
> Nedenunder kommer selvfølgelig udskrivelser af værdierne.
> Her er siden:
>
> <html>
>
> <head>
> <title>Ingstrup Mølle Fiskepark</title>
> <link rel="Stylesheet" type="text/css" href="./style.css">
> </head>
>
> <body topmargin="0">
> <table border="0" width="590" align="left" cellspacing="0"
> cellpadding="0">
> <tr>
> <td width="100%">
>
> <h1 align="center"><br>
> Arrangementer</h1>
> <table border="0" width="530" cellspacing="3"
> cellpadding="0" align="right">
> <%
> ' Databaseforbindelse - husk at angive sti til din database
> Set Conn = Server.CreateObject("ADODB.Connection")
> DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
> DSN = DSN & "DBQ=" & Server.MapPath("./cgi-bin/database.mdb")
> Conn.Open DSN
>
> ' SQL forespørgsel
> strSQL = "Select * from arrangementer Where dato > " & Day(Date)
> & "-" & Month(Date) & "-" & Year(Date)
> ' Udfør forespørgsel (rs indeholder nu resultatet)
> Set rs = Conn.Execute(strSQL)
>
> If rs.EOF OR rs.BOF Then
> Response.Write "<p>Der er ingen arrangementer i
> øjeblikket!</p>"
>
> else
>
> ' Gennemløb Recordset (rs) med en løkke
> Do
>
> ' Udskriv værdien af kolonnen Fornavn
> Response.Write "<tr><td colspan='2'><h2>" & rs("overskrift") &
> "</td></tr>"
> Response.Write "<tr><td width='175'
> valign='top'><p><b>&nbsp;&nbsp;" & rs("dato") &
> "</b><br>&nbsp;&nbsp;Kl. " & rs("klokken")
>
> & "</p></td>"
> Response.Write "<td width='355' valign='top'><p>" &
> rs("beskrivelse") & "</p></td></tr>"
> Response.Write "<tr><td valign='top'
> colspan='2'><br><br></td></tr>"
>
> ' Gå til næste Record i rs
> rs.MoveNext
>
> ' Fortsæt indtil rs er gennemløbet (EOF = End Of File)
> Loop While Not rs.EOF
>
> End if
>
> ' Luk databaseforbindelse
> Conn.Close
> Set Conn = Nothing
> %>
> </table>
>
> </td>
> </tr>
> </table>
> </body>
>
> </html>
>
>
> Hvad findes der ellers af metoder?
> På forhånd tak - Dennis.
>
> --
> Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
> - Pædagogiske tutorials på dansk
> - Kom godt i gang med koderne
> KLIK HER! => http://www.html.dk/tutorials



Hej

Jeg aner ikke om den holder her, men i VB vil SQL'en være noget der ligner:
strSQL = "Select * from arrangementer Where dato <= #" & Day(Date)
& "-" & Month(Date) & "-" & Year(Date) & "#"

hilsen Ivan D-J




Jens Gyldenkærne Cla~ (25-07-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 25-07-03 14:12

Ivan D-J skrev:

[snip - laaangt citat]

> Jeg aner ikke om den holder her, men i VB vil SQL'en være
> noget der ligner:

Så vidt jeg ved er VB et sprog og ikke en database. SQL'en afhænger
af den bagvedliggende database - intet andet.

> strSQL = "Select * from arrangementer Where dato <= #" &
> Day(Date) & "-" & Month(Date) & "-" & Year(Date) & "#"

Syntaksen med havelåger (#) hører til Access og bruges vist ikke
andre steder. Problemet med om datoen skal skrives/læses som dd-mm-
yyyy eller mm-dd-yyyy kan undgås ved at benytte DateSerial i Access
(jf Jørns svar og <url: http://www.asp-faq.dk/article/?id=98>). I
MSSQL kan man gøre noget tilsvarende med CONVERT.


NB: Læs gerne min signatur.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Dennis Møller (28-07-2003)
Kommentar
Fra : Dennis Møller


Dato : 28-07-03 23:38

Jens GyldenkærneClausen wrote in
dk.edb.internet.webdesign.serverside.asp:
> Syntaksen med havelåger (#) hører til Access og bruges vist ikke
> andre steder. Problemet med om datoen skal skrives/læses som dd-mm-
> yyyy eller mm-dd-yyyy kan undgås ved at benytte DateSerial i Access
> (jf Jørns svar og <url: http://www.asp-faq.dk/article/?id=98>). I
> MSSQL kan man gøre noget tilsvarende med CONVERT.

Her har du så ikke helt ret åbenbart, Jens. Nu skal jeg ikke kloge,
men det hjalp da jeg satte # ind i begge ender...
Jeg har så lavet en "if", som skelner mellem om der er en variabel i
URL'en, eller ej. Derved kan jeg få vist aktuelle arrangementer, inkl.
arrangementer dateret til dagen i dag, ved "Større-end-eller-lig-med
(>=)", og tidligere arrangementer, eksl. arrangementer dateret til
dagen i dag, ved "Mindre-end (<)".

Tak for hjælpen, råd og anbefalinger! - Dennis.

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Jens Gyldenkærne Cla~ (29-07-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 29-07-03 00:03

Dennis Møller skrev:

> Her har du så ikke helt ret åbenbart, Jens.

Det er jo ikke utænkeligt ;) - men alligevel, hvad er det forkerte
i det jeg skrev?


> Nu skal jeg ikke kloge, men det hjalp da jeg satte # ind i
> begge ender...

Jeg skrev at # bruges i Access (og, så vidt jeg ved, ikke andre
steder). Så vidt jeg kan se, benytter du Access.

Jeg skrev også at man kan slippe for at bekymre sig om datoformater
ved at benytte DateSerial som beskrevet på
<http://www.asp-faq.dk/article/?id=98>.

Og endelig skrev at jeg at man i MSSQL kan benytte Convert i stedet
for DateSerial.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Dennis Møller (31-07-2003)
Kommentar
Fra : Dennis Møller


Dato : 31-07-03 23:45

Jens GyldenkærneClausen wrote in
dk.edb.internet.webdesign.serverside.asp:
> Jeg skrev at # bruges i Access (og, så vidt jeg ved, ikke andre
> steder). Så vidt jeg kan se, benytter du Access.

Du må undskylde - jeg misforstod vist fuldstændigt din sætning der,
Jens.
Jeg troede du modsagde ham, ved at skrive at at det kun kunne bruges
i programmeringen af Access-databasen.
Men pyt, det virkede da jeg skrev det! :D

> Jeg skrev også at man kan slippe for at bekymre sig om datoformater
> ved at benytte DateSerial som beskrevet på
> <http://www.asp-faq.dk/article/?id=98>.
>
> Og endelig skrev at jeg at man i MSSQL kan benytte Convert i stedet
> for DateSerial.

Ja, tak for al din hjælp! Du havde masser af alternativer i
baglommen. Men jeg var vist lidt doven. Jeg ville se om jeg ikke
kunne få det til at virke uden brug af ekstra programmering... :P

Dennis.

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Jørn Andersen (24-07-2003)
Kommentar
Fra : Jørn Andersen


Dato : 24-07-03 07:28

On Wed, 23 Jul 2003 23:57:31 +0000 (UTC), Dennis Møller
<djm@dennermanner.dk> wrote:

>strSQL = "Select * from arrangementer Where dato <= " & Day(Date)
>& "-" & Month(Date) & "-" & Year(Date)

Brug DateSerial:
<url: http://www.asp-faq.dk/article/?id=98>
- så gør du dig også uafhængig af evt. forskelle i dato-format mellem
script og db.

Good luck!

--
Jørn Andersen,
Brønshøj

Ulrik Chr. (24-07-2003)
Kommentar
Fra : Ulrik Chr.


Dato : 24-07-03 17:07

"Dennis Møller" <djm@dennermanner.dk> skrev i en meddelelse
news:bfn7db$kot$1@sunsite.dk...

> ' SQL forespørgsel
> strSQL = "Select * from arrangementer Where dato > " & Day(Date)
> & "-" & Month(Date) & "-" & Year(Date)

Skal denne ikke se sådan her ud?

strSQL = "Select * from arrangementer Where md >= " & Day(Date)
& " AND dag >= " & Month(Date) & " aar >= " & Year(Date)

Og så få sat dag, måned og år ind i databasen i hver sin kolonne:
md, dag og aar

Dette burde da kunne løse dit problem.

--
Ulrik Chr.
nettet@uac.dk
www.uac.dk



Jørn Andersen (24-07-2003)
Kommentar
Fra : Jørn Andersen


Dato : 24-07-03 17:19

On Thu, 24 Jul 2003 18:07:26 +0200, "Ulrik Chr." <nettet@uac.dk>
wrote:

>Og så få sat dag, måned og år ind i databasen i hver sin kolonne:
>md, dag og aar

Nej, nej - når nu databasen har en datatype, der hedder dato/tid, så
kan jeg personligt ikke forestille mig situationer, hvor det ikke vil
være mest optimalt at bruge den.
Det gør det langt nemmere at lave dato/tid-beregninger.

Den eneste ulempe er, at man lige skal blive fortrolig med overførsel
af data mellem ASP-script og database.

Kig evt. på disse links:
<url: http://www.asp-faq.dk/article/?id=98>
<url: http://www.asp-faq.dk/article/?id=47>

Der er sådan set kun to regler, man skal forstå - og overholde:
1) Sørg for at overføre dato-*værdier* og glem alt om *formatet* (det
er hvad den første link handler om)
2) Sørg for, at scriptet snakker samme sprog som databasen (det er
hvad den anden link handler om)

--
Jørn Andersen,
Brønshøj

Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408934
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste