webForumDet fria alternativet

Datum/tid & SQL UPDATE & snurra

27 svar · 508 visningar · startad av CatZ

CatZMedlem sedan jan. 20022 440 inlägg
#1
while not rs.eof 
response.write "<tr class=td2>" & _
"<td align=right>Spelkv&auml;ll 1</td>" & _
"<td><select name=dag>" &_
"<option>.: V&auml;lj Dag :.</option>" & _
"<option value=Måndag"
If rs("dag") = "Måndag" Then response.write " Selected"
response.write ">Måndag</option>" & _
"<option value=Tisdag"
If rs("dag") = "Tisdag" Then response.write " Selected"
response.write ">Tisdag</option>" & _
"<option value=Onsdag"
If rs("dag") = "Onsdag" Then response.write " Selected"
response.write ">Onsdag</option>" & _
"<option value=Torsdag"
If rs("dag") = "Torsdag" Then response.write " Selected"
response.write ">Torsdag</option>" & _
"<option value=Fredag"
If rs("dag") = "Fredag" Then response.write " Selected"
response.write ">Fredag</option>" & _
"<option value=Lördag"
If rs("dag") = "Lördag" Then response.write " Selected"
response.write ">Lördag</option>" & _
"<option value=Söndag"
If rs("dag") = "Söndag" Then response.write " Selected"
response.write ">Söndag</option>" & _
"</select>" & _
"Tid: " & _
"<input name=tid type=text size=5 maxlength=5 value=" & FormatDateTime(rs("tid"),4) & "></td>" & _
"<td><input name=dagid type=hidden value=" & rs("dagID") & "></td>" & _
 "<td></td>" & _
"</tr>"
rs.movenext
wend

SQL2 = "UPDATE kbdag SET" & _
" dag = '" & Request.Form("dag") & "', " & _
" tid = #" & Request.Form("tid") & "# " & _
" WHERE KrID = " & Request.Querystring("id") & " " & _
" AND dagID = " & Request.Form("dagID")
dbCom.Execute SQL2,,128

Den koden ger följande fel:
Feltyp:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][Drivrutin för ODBC Microsoft Access] Syntaxfel i datum i frågeuttrycket '#16:00'.
/admin/admin_klubbar.asp, line 279

Och 279 är ju då givetvis dbCom.Execute SQL2,,128

Någon som fattar någe? jag gör det inte

cyprysMedlem sedan dec. 20003 563 inlägg
#2

Pröva skriva ut den? response.write SQL2

Testa annars med
" tid = '" & Request.Form("tid") & "' " & _

har du kolumnen tid som date eller varchar?

EkströmMedlem sedan feb. 20022 594 inlägg
#3

En liten fråga bara. Varför sparar du dag och tid i separata kolumner?

CatZMedlem sedan jan. 20022 440 inlägg
#4

för att det på samma dag kan förekomma flera tider så det blir ändå att spara dubbelt i databasen :)

CatZMedlem sedan jan. 20022 440 inlägg
#5

Såhär blir det när jag skriver ut det...

UPDATE kbdag SET dag = 'Söndag, Tisdag', tid = #16:00, 18:30# WHERE KrID = 1317570844 AND dagID = 5, 6
EkströmMedlem sedan feb. 20022 594 inlägg
#6

CatZ skrev:

för att det på samma dag kan förekomma flera tider så det blir ändå att spara dubbelt i databasen :)

Jo, men du skulle kunnat spara det i endast en kolumn. Onödigt det du gjort tycker jag...

cyprysMedlem sedan dec. 20003 563 inlägg
#7

Du kan inte spara flera siffror i en INT kolumn.
Gör om alla till varchar och sätt ' ' runt om. Inte KrID dock.
Tiden tar du bort # runt.

Dock tycker även jag att du kanske ska tänka om. Det kanske går att göra lite smidigare? Bara kanske ;)

CatZMedlem sedan jan. 20022 440 inlägg
#8

Ekström skrev:

Jo, men du skulle kunnat spara det i endast en kolumn. Onödigt det du gjort tycker jag...

Det hjälper lixom inte eller ? Om jag har 7 kolumner med dagar som jag fyller i tid i eller 2 kolumner som jag fyller i dag OCH tid... vad är knas ?

cyprysMedlem sedan dec. 20003 563 inlägg
#9

CatZ skrev:

Det hjälper lixom inte eller ? Om jag har 7 kolumner med dagar som jag fyller i tid i eller 2 kolumner som jag fyller i dag OCH tid... vad är knas ?

Grejen är nog att man behöver inte dela upp tid och datum. now() skriver ju datum i format 2002-01-01 19:00:00 så den innehåller ju allt man vill.
Sen är det bara att köra datepart på den för att få ut precis det man vill.

CatZMedlem sedan jan. 20022 440 inlägg
#10

Jo men eftersom det är en stående tid så funkar ju inte now() så bra ;)

Men jag funderar på att skita i att tillåta ändringar i den tiden och göra en länk så att man måste ändra en tid åt gången

För nu får jag upp följande felmeddelande:
Feltyp:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][Drivrutin för ODBC Microsoft Access] Syntaxfel (komma) i frågeuttrycket 'KrID = 1317570844 AND dagID = 5, 6'.

CatZMedlem sedan jan. 20022 440 inlägg
#11

Kan man inte uppdatera flera olika poster med en uppdatering i samma tabell ?

@ndersMedlem sedan juni 200032 969 inlägg
#12

Jodå, varför skulle du inte kunna göra det?
Det är where-delen av din SQL-fråga som styr vilka poster som skall uppdateras. Du kan använda IN() för att ange flera fältvärden.

...AND dagID [b]IN (5, 6)[/b]

Mvh,

CatZMedlem sedan jan. 20022 440 inlägg
#13

aha, men i det här fallet så är det inte förutbestämt.. kan man göra

 WHERE KrID = Request.Querystring("id") AND dagID IN Request.Form("dagID")

Uppdaterar den alla dagID fälten korrekt iså fall ?

LarsGMedlem sedan dec. 200012 464 inlägg
#14
WHERE KrID = " & Request.Querystring("id") & " AND dagID IN ("  & Request.Form("dagID") & ")"
CatZMedlem sedan jan. 20022 440 inlägg
#15

puss puss LarsG :f

CatZMedlem sedan jan. 20022 440 inlägg
#16
while not rs.eof 
response.write "<tr class=td2>" & _
"<td align=right>Spelkväll 1</td>" & _
"<td><select name=dag>" &_
"<option>.: Välj Dag :.</option>" & _
"<option value=Måndag"
If rs("dag") = "Måndag" Then response.write " Selected"
response.write ">Måndag</option>" & _
'osv
rs.movenext
wend

Hur gör jag så att jag kan skriva ett alternativ om det inte finns någon spelkväll ?

if not rs.eof then
resonse.write osv
istä'llet för while not rs.eof ? nej men ni vet... ? ett andra alternativ om det ínte finns någon spelkväll

@ndersMedlem sedan juni 200032 969 inlägg
#17

Du är på rätt spår.

if rs.eof then

EOF betyder ju end of file, och är true när recordsetet är tomt. :)

Mvh,

CatZMedlem sedan jan. 20022 440 inlägg
#18

Jag testade med

				 
If rs.eof = TRUE then 
response.write "Inga spelkvällar"
Else
while not rs.eof

Jag fattar nog inte :r

@ndersMedlem sedan juni 200032 969 inlägg
#19

På vilket sätt fungerar inte det där då?

CatZMedlem sedan jan. 20022 440 inlägg
#20

Feltyp:
ADODB.Field (0x80020009)
Antingen är BOF eller EOF satt till True, eller så har aktuell post raderats. Den begärda åtgärden kräver en aktuell post.
/admin/admin_klubbar.asp

277 ms totalt · 3 externa anrop · v20260731065814-full.30151723
130 ms — hämta forumlista (db)
128 ms — hämta statistik (db)
131 ms — hämta tråd, inlägg och bilagor (db)