Avatar billede tblaster Nybegynder
22. september 2002 - 12:59 Der er 34 kommentarer og
1 løsning

Expected 'Then'

Hvad er der lige galt med følgende:

<%
If rs("start") = 13:00:00 Then
response.write "13:00"
Else
response.write "<a href=""bestil.asp?Lokale=" & sQLokale & "&Dag=" & sQDag & "&Mdr=" & sQMdr & "&ÅR=" & sQAar & "&Tid=13:00"" style=""text-decoration: none"">13:00</a>"
%></td>
            <td width="515" nowrap bgcolor="#EFEEDE" height="19">
<%
If rs("start") = 13:00:00 Then
response.write rs("kommentar")
end if
%>

Den kommer med følgende fejl:

Expected 'Then'

/1/dato.asp, line 321

If rs("start") = 13:00:00 Then
Avatar billede larsen Nybegynder
22. september 2002 - 13:01 #1
Prøv at sætte " rundt om 13:00:00

"13:00:00"
Avatar billede excession Nybegynder
22. september 2002 - 13:32 #2
hvor er linie 321?
Avatar billede excession Nybegynder
22. september 2002 - 13:38 #3
nå ok If rs("start") = 13:00:00 Then

prøv at bruge FormatDateTime på datoen eller klokken:

start = FormatDateTime(rs("start"), 4)

If start = FormatDateTime(CDate("13:00:00"), 4) Then
response.write "start 13:00"
ELSE
response.write "starter ikke 13:00"
end if
Avatar billede tblaster Nybegynder
22. september 2002 - 14:20 #4
excession ... din melder følgende:

Exception occurred.

Larsen din melder følgende:
Item cannot be found in the collection corresponding to the requested name or ordinal.
Avatar billede mccannon Nybegynder
22. september 2002 - 14:26 #5
hmm lyder som et sql sætning prolem
Avatar billede excession Nybegynder
22. september 2002 - 14:28 #6
<%
tid = "13:00:00"
tid = CDate(tid)
tid = FormatDateTime(tid, 4)
start = FormatDateTime(rs("start"), 4)

If start = tid Then
response.write "start 13:00"
ELSE
response.write "starter ikke 13:00"
end if

%>
Avatar billede tblaster Nybegynder
22. september 2002 - 14:33 #7
skal jeg ikke bruge rs("start") istedet for bare start ?!?!??!?!
Avatar billede excession Nybegynder
22. september 2002 - 14:37 #8
nej..fordi der laves en variable der hedder start som er lig med:
FormatDateTime(rs("start"), 4)

<%
tid = "13:00:00"
tid = CDate(tid)
tid = FormatDateTime(tid, 4)
' variable start er lig med rs("start")
start = FormatDateTime(rs("start"), 4)

If start = tid Then
response.write "start 13:00"
ELSE
response.write "starter ikke 13:00"
end if

%>
Avatar billede excession Nybegynder
22. september 2002 - 14:38 #9
FormatDateTime(tid, 4) fjerner evt. sekunder. f.eks.:
13:00:00 vil blive 13:00
Avatar billede tblaster Nybegynder
22. september 2002 - 14:40 #10
ahh ... det havde jeg ikke set :-D ... jeg checker det lige!
Avatar billede tblaster Nybegynder
22. september 2002 - 14:42 #11
Det giver stadig denne fejl:

Item cannot be found in the collection corresponding to the requested name or ordinal.

Den sider der ligger i følgende linje:

start = FormatDateTime(rs("start"), 4)
Avatar billede tblaster Nybegynder
22. september 2002 - 14:45 #12
Har lige prøvet med følgende men det melder også fejl:

<%

Set Con = Server.CreateObject("ADODB.Connection")
DBPath = "DBQ=" & server.mappath("../../db/Booking.mdb")
Con.Open "DRIVER={Microsoft Access Driver (*.mdb)};Password=1234 ;" & DBPath

'Find Bookninger for valgte dato
SQL = "SELECT booking.start , booking.firma , booking.initialer , booking.mail , booking.kommentar FROM booking WHERE dato = #" & dato & "#"
set rs = con.execute (SQL)

tid = "13:00:00"
tid = CDate(tid)
tid = FormatDateTime(tid, 4)
start = FormatDateTime(rs("start"), 4)

con.close

If start = tid Then
response.write "13:00"
Else
response.write "<a href=""bestil.asp?Lokale=" & sQLokale & "&Dag=" & sQDag & "&Mdr=" & sQMdr & "&ÅR=" & sQAar & "&Tid=13:00"" style=""text-decoration: none"">13:00</a>"
End if
%>
</td>
            <td width="515" nowrap bgcolor="#EFEEDE" height="19">
<%
If start = tid Then
response.write rs("kommentar")
End if

%>

Fejl:

error '80020009'
Exception occurred.
Avatar billede excession Nybegynder
22. september 2002 - 14:45 #13
du manglede i øvrigt en END IF i din kode øverst...:

<%
If rs("start") = 13:00:00 Then
response.write "13:00"
Else
response.write "<a href=""bestil.asp?Lokale=" & sQLokale & "&Dag=" & sQDag & "&Mdr=" & sQMdr & "&ÅR=" & sQAar & "&Tid=13:00"" style=""text-decoration: none"">13:00</a>"
'------manglede den her end if
END IF
%></td>
            <td width="515" nowrap bgcolor="#EFEEDE" height="19">
<%
If rs("start") = 13:00:00 Then
response.write rs("kommentar")
end if
%>
Avatar billede excession Nybegynder
22. september 2002 - 14:50 #14
den virker fint hos mig, når jeg tester det..

prøv sådan her:

<%
tid = "13:00:00"
tid = CDate(tid)
tid = FormatDateTime(tid, 4)

start = rs("start")
start = CDate(start)
start = FormatDateTime(start, 4)

If start = tid Then
response.write "start 13:00"
ELSE
response.write "starter ikke 13:00"
end if

%>
Avatar billede tblaster Nybegynder
22. september 2002 - 14:53 #15
Med det sidste du skrev melder den følgende:

ADODB.Field error '800a0bcd'

Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record.


Den siger det ligger i følgende linje:

start = rs("start")

Er der noget galt i min sql?
Set Con = Server.CreateObject("ADODB.Connection")
DBPath = "DBQ=" & server.mappath("../../db/Booking.mdb")
Con.Open "DRIVER={Microsoft Access Driver (*.mdb)};Password=1234 ;" & DBPath

'Find Bookninger for valgte dato
SQL = "SELECT booking.start , booking.firma , booking.initialer , booking.mail , booking.kommentar FROM booking WHERE dato = #" & dato & "#"
set rs = con.execute (SQL)
Avatar billede excession Nybegynder
22. september 2002 - 15:02 #16
ja hvis der ikke er nogen poster der matcher den tid dubruegr i SQL'en vil den lave fejl

i dit indlæg fra 22/09-2002 14:45:01 lukker du også connection con.close for tidligt

du bør også lave en løkke der løber resultater igennem

prøv sådan her:

<%

Set Con = Server.CreateObject("ADODB.Connection")
DBPath = "DBQ=" & server.mappath("../../db/Booking.mdb")
Con.Open "DRIVER={Microsoft Access Driver (*.mdb)};Password=1234 ;" & DBPath

'Find Bookninger for valgte dato
SQL = "SELECT booking.start , booking.firma , booking.initialer , booking.mail , booking.kommentar FROM booking WHERE dato = #" & dato & "#"
set rs = con.execute (SQL)

DO WHILE NOT rs.EOF

tid = "13:00:00"
tid = CDate(tid)
tid = FormatDateTime(tid, 4)

start = rs("start")
start = CDate(start)
start = FormatDateTime(start, 4)

If start = tid Then
response.write "13:00"
Else
response.write "<a href=""bestil.asp?Lokale=" & sQLokale & "&Dag=" & sQDag & "&Mdr=" & sQMdr & "&ÅR=" & sQAar & "&Tid=13:00"" style=""text-decoration: none"">13:00</a>"
End if
%>
</td>
            <td width="515" nowrap bgcolor="#EFEEDE" height="19">
<%
If start = tid Then
response.write rs("kommentar")
End if

rs.movenext
loop

con.close
%>
Avatar billede tblaster Nybegynder
22. september 2002 - 15:13 #17
Ligemeget hvilken dag jeg vælger nu så skriver den bare 13:00 også selvom at jeg ved at der på den pågældende dag ikke er defineret en start med 13:00:00! Hvad er der galt?
Avatar billede tblaster Nybegynder
22. september 2002 - 15:17 #18
Jeg har smidt følgende i toppen af min side:

<%

Set Con = Server.CreateObject("ADODB.Connection")
DBPath = "DBQ=" & server.mappath("../../db/Booking.mdb")
Con.Open "DRIVER={Microsoft Access Driver (*.mdb)};Password=1234 ;" & DBPath

'Find Bookninger for valgte dato
SQL = "SELECT booking.start , booking.firma , booking.initialer , booking.mail , booking.kommentar FROM booking WHERE dato = #" & dato & "#"
set rs = con.execute (SQL)

DO WHILE NOT rs.EOF

tid = "13:00:00"
tid = CDate(tid)
tid = FormatDateTime(tid, 4)

start = rs("start")
start = CDate(start)
start = FormatDateTime(start, 4)

rs.movenext
loop

%>

Så kommer der en masse almindlige ting og så kommer følgende (ca en 300 linjer under):

<%
If start = tid Then
response.write "13:00"
Else
response.write "<a href=""bestil.asp?Lokale=" & sQLokale & "&Dag=" & sQDag & "&Mdr=" & sQMdr & "&ÅR=" & sQAar & "&Tid=13:00"" style=""text-decoration: none"">13:00</a>"
End if
%>
</td>
            <td width="515" nowrap bgcolor="#EFEEDE" height="19">
<%
If start = tid Then
response.write "Hejsa"
End if
%>

Derefter kommer der noget mere og til sidst i min kode har jeg smidt følgende:

<%
con.close
%>

Er der heri noget galt der gør at alle steder med tiden 13:00 bliver skrevet med tiden 13:00 uden link og med teksten hejsa?
Avatar billede tblaster Nybegynder
22. september 2002 - 15:19 #19
Jeg har lige ændret følgende:

<%
If start = tid Then
response.write "Hejsa"
End if
%>

Til følgende:

<%
If start = tid Then
response.write "Hejsa"
Else
respose.write "&nbsp;"
End if
%>   

Men det gøre ingen forskel :-(
Avatar billede excession Nybegynder
22. september 2002 - 16:24 #20
du kan ikke lave løkkken sådan her:

DO WHILE NOT rs.EOF

tid = "13:00:00"
tid = CDate(tid)
tid = FormatDateTime(tid, 4)

start = rs("start")
start = CDate(start)
start = FormatDateTime(start, 4)

rs.movenext
loop

eller det kan du godt men du får ikke noget ud af det..

sådan:



<%

Set Con = Server.CreateObject("ADODB.Connection")
DBPath = "DBQ=" & server.mappath("../../db/Booking.mdb")
Con.Open "DRIVER={Microsoft Access Driver (*.mdb)};Password=1234 ;" & DBPath

'Find Bookninger for valgte dato
SQL = "SELECT booking.start , booking.firma , booking.initialer , booking.mail , booking.kommentar FROM booking WHERE dato = #" & dato & "#"
set rs = con.execute (SQL)

DO WHILE NOT rs.EOF


tid = "13:00:00"
tid = CDate(tid)
tid = FormatDateTime(tid, 4)

start = rs("start")
start = CDate(start)
start = FormatDateTime(start, 4)

If start = tid Then
response.write "start = tid, dvs. at den her record fra databasen er lig med den tid du specificerer under tid,f.eks. 13:00:00" & "<BR>"
Else
response.write "start er ikke lig med tid, dvs. at den record du henter fra databasen er IKKE lig med tid = 13:00:00"
End if
%>

<%
If start = tid Then
response.write rs("kommentar") & "den her kommentar udskrives fordi start er lig med den tid du specificerer under tid,f.eks. 13:00:00" & "<BR>"
End if

rs.movenext
loop

con.close
%>
Avatar billede tblaster Nybegynder
22. september 2002 - 16:41 #21
Hvis jeg prøver med følgende:

<%
If start = tid Then
response.write "7:00"
Else
response.write "<a href=""bestil.asp?Lokale=" & sQLokale & "&Dag=" & sQDag & "&Mdr=" & sQMdr & "&ÅR=" & sQAar & "&Tid=7:00"" style=""text-decoration: none""7:00</a>"
End if
%>
</td>
            <td width="515" nowrap bgcolor="#EFEEDE" height="19">
<%
If start = tid Then
response.write rs("kommentar")
Else
respose.write "&nbsp;"
End if

rs.movenext
loop

con.close

%>

Så viser den intet med 7:30 men går bare til næste del af min script :-(
Avatar billede tblaster Nybegynder
22. september 2002 - 16:44 #22
Kan mit problem være at jeg har noget mellem mine koder? Her er bægge mine koder med det der ligger imellem dem:

<%

Set Con = Server.CreateObject("ADODB.Connection")
DBPath = "DBQ=" & server.mappath("../../db/Booking.mdb")
Con.Open "DRIVER={Microsoft Access Driver (*.mdb)};Password=1234 ;" & DBPath

'Find Bookninger for valgte dato
SQL = "SELECT booking.start , booking.firma , booking.initialer , booking.mail , booking.kommentar FROM booking WHERE dato = #" & dato & "#"
set rs = con.execute (SQL)

DO WHILE NOT rs.EOF

tid = "07:00:00"
tid = CDate(tid)
tid = FormatDateTime(tid, 4)

start = rs("start")
start = CDate(start)
start = FormatDateTime(start, 4)

%>

</b></font>

<tr>
<td width="26" height="16"></td>
<td width="10" height="16">
  </td>
<td width="96" height="16">
  <b><font face="Verdana, Arial" size="1" color="#000000">Tid</font></b></td>
<td width="515" height="16">
  <b><font face="Verdana, Arial" size="1" color="#000000">Appointment</font></b></td>
</tr>
<tr>
<td width="26" height="1" bgcolor="#000000"></td>
<td width="10" height="1" bgcolor="#000000"></td>
<td width="96" height="1" bgcolor="#000000"></td>
<td width="515" height="1" bgcolor="#000000"></td>
</tr>
<tr>
<td colspan="3" bgcolor="#FFFFFF" width="20" height="3">
</td>
</tr>
            <tr>
            <td bgcolor="#608ec6" width="26" height="19">
              &nbsp;</td>
            <td width="10" nowrap bgcolor="#EFEEDE" height="19">
              &nbsp;</td>
            <td width="96" nowrap bgcolor="#EFEEDE" height="19">

<%
If start = tid Then
response.write "7:00"
Else
response.write "<a href=""bestil.asp?Lokale=" & sQLokale & "&Dag=" & sQDag & "&Mdr=" & sQMdr & "&ÅR=" & sQAar & "&Tid=7:00"" style=""text-decoration: none""7:00</a>"
End if
%>
</td>
            <td width="515" nowrap bgcolor="#EFEEDE" height="19">
<%
If start = tid Then
response.write rs("kommentar")
Else
respose.write "&nbsp;"
End if

rs.movenext
loop

con.close

%>
Avatar billede tblaster Nybegynder
22. september 2002 - 16:50 #23
Med det du siger udskriver den intet :-(

Jeg har lige prøvet at smide en side op med det du skrev i din sidste kommentar (22/09-2002 16:24:59). Du kan se den her ... den skriver kun datoen for hvornår der er valgt men intet med 7:00 eller lign :-(


http://www.havneparken1vejle.dk/1/dato.asp?Lokale=&Dag=30&Mdr=9&År=2002
Avatar billede excession Nybegynder
22. september 2002 - 17:13 #24
dit link ser lidt forkert ud...:

response.write "<a href=""bestil.asp?Lokale=" & sQLokale & "&Dag=" & sQDag & "&Mdr=" & sQMdr & "&ÅR=" & sQAar & "&Tid=7:00"" style=""text-decoration: none""7:00</a>"

jeg kan ikke se hvad der er hvad... hvad af det er variabler?
Avatar billede tblaster Nybegynder
22. september 2002 - 17:17 #25
Hvad mener du? Jeg kan se at der ikke er defineret noget lokale men det er ligemeget ... ellers er det som følgende:
Dag: 30
Mdr: 9
År: 2002

Inden din kode har jeg denne der laver lidt om på talne og samler dem til senere brug ...

if request.querystring("Dag") <> "" then

sQDag = request.querystring("Dag")
sQMdr = request.querystring("Mdr")
sQAar = request.querystring("Mdr")
sQLokale = Session("Lokale")

arrMonth = Array("januar", "febuar", "marts", "april", "maj", "juni", "juli", "august", "september", "oktober", "november", "december")
arrDay = Array("Søndag", "Mandag", "Tirsdag", "Onsdag", "Torsdag", "Fredag", "Lørdag")

datoDag = sQDag
Mdr = sQMdr
datoStr = datoDag & "-" & Mdr & "-" & sQAar

datoStreng = arrDay(WeekDay(datoStr)-1) & " den " & datoDag & ". " & arrMonth(Mdr-1) & " " & Year(datoStr) & " - " & sQLokale

dato = sQdag & "-" & sQMdr & "-" & sQAar

Response.write datoStreng

else

sQDag = Day(Date)
  sQMdr = Month(Date)
  sQAar = Year(Date)
sQLokale = Session("Lokale")

arrMonth = Array("januar", "febuar", "marts", "april", "maj", "juni", "juli", "august", "september", "oktober", "november", "december")
arrDay = Array("Søndag", "Mandag", "Tirsdag", "Onsdag", "Torsdag", "Fredag", "Lørdag")

datoDag = sQDag
Mdr = sQMdr
datoStr = datoDag & "-" & Mdr & "-" & sQAar

datoStreng = arrDay(WeekDay(datoStr)-1) & " den " & datoDag & ". " & arrMonth(Mdr-1) & " " & Year(datoStr) & " - " & sQLokale

dato = sQdag & "-" & sQMdr & "-" & sQAar

Response.write datoStreng

end if
Avatar billede excession Nybegynder
22. september 2002 - 17:17 #26
<a href="bestil.asp?Lokale=<%=sQLokale%>&Dag=<%=sQDag%>&Mdr=<%=sQMdr%>&ÅR=<%=sQAar%>&Tid=7:00" style="text-decoration: none">7:00</a>

prøv sådan der.. hvorfor skriver du tid på den måde?  jeg kan ikke se hvorfor den er der eller hvad linket skal..
Avatar billede tblaster Nybegynder
23. september 2002 - 21:18 #27
Kan det ikke være ligemeget hvordan mit link blvier skrevet? Jeg skriver den på den måde for sådan har jeg bygget systemet op og jeg ved at det med linket virker ... min side kørte jo fint inden jeg begynte at arbejde med at den skulle checke om et tidspunkt var booket eller ej :-D
Avatar billede excession Nybegynder
23. september 2002 - 22:21 #28
jo, det kan du godt

men der var alligevel fejl i linket.  den skal se sådan ud:


response.write "<a href=""bestil.asp?Lokale=" & sQLokale & "&Dag=" & sQDag & "&Mdr=" & sQMdr & "&ÅR=" & sQAar & "&Tid=7:00"" style=""text-decoration: none"">7:00</a>"
Avatar billede tblaster Nybegynder
24. september 2002 - 21:33 #29
Ahh ... nu er jeg med ... jeg troede du talte om et andet link!

Med det rettet får jeg følgende:

[Microsoft][ODBC Microsoft Access Driver] Syntax error in date in query expression 'dato = ##'.
Avatar billede tblaster Nybegynder
24. september 2002 - 21:36 #30
Ups ... jeg havde kommet til at slette en linje ... nu har jeg rettet det også med det du skrev med linket men den gør stadig det samme ... kommer altså ikke med noget :-(
Avatar billede tblaster Nybegynder
24. september 2002 - 21:41 #31
Hvis jeg derimod går hen på en dag hvor der er lagt en booking så skriver den følgende:


    7:00   
  Tid Appointment
   

    7:00   
  Tid Appointment
   

    7:00   
  Tid Appointment
   

    7:00  Test møde 


Den skriver altså først 3 gange hvor den ikke er booket og en gang hvor den er ... hvad kan der være galt?

Check følgende:
http://www.havneparken1vejle.dk/1/dato.asp?Lokale=&Dag=30&Mdr=9&År=2002
Avatar billede excession Nybegynder
24. september 2002 - 21:42 #32
hvor får du dato i SQL sætning fra?
Avatar billede tblaster Nybegynder
24. september 2002 - 21:49 #33
Den får jeg fra min kode i kommentaren fra 22/09-2002 17:17:15
Avatar billede tblaster Nybegynder
02. oktober 2002 - 18:02 #34
Da vi er kommet lidt langt væk fra det det hele startede med og da vi har fået sat det på plads har jeg valgt at starte et nyt spørgsmål med problemet som det er nu. Så kan alle være med igen! Takker for hjælpen indtil vidre excession!

Det nye spørgsmål kan ses her:
http://www.eksperten.dk/spm/265239
Avatar billede excession Nybegynder
02. oktober 2002 - 20:17 #35
så lidt :)
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