varför funkar inte detta?
<% Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "batang.com-fame/biljett"
Set RecSet = Server.CreateObject("ADODB.Recordset")
Visa = "SELECT * FROM forum where id = " & id
RecSet.Open Visa, Connect, 3,3
RecSet("user") = Request.Form("user")
RecSet("rubrik") = Request.Form("rubrik")
RecSet("kommentar") = Request.Form("kommentar")
RecSet("svar") = Request.Form("svar")
RecSet("datum") = Request.Form("datum")
RecSet("usersvar") = Request.Form("usersvar")
RecSet("datumsvar") = Request.Form("datumsvar")
RecSet.Update
RecSet.Close
Connect.Close %>
Får mismatch på den raden med "usersvar". Det är en textarea!
M@rtinMedlem sedan dec. 19992 085 inlägg Vad har du för datatyp på undersvar i databasen då?
------------------
//M@rtin || Peachy.nu\\
Sue Me!
det är text. sorry det var ingen textarea utan ett vanligt textfield
får samma fel på raden med "svar" detta är ett memo
VideMedlem sedan dec. 19998 577 inlägg Du måste väl ha med "RecSet.AddNew" före...
Men varför använder du ett recordset för att lägga till en ny post i databasen? helt onödigt... använd en vanlig INSERT-SQL-sats för det...
------------------
webEye.nu SweQuake.com
VIll inte lägga till poster utan redigera de som finns där
LarsGMedlem sedan dec. 200012 464 inlägg En update då
<% Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "batang.com-fame/biljett"
Visa = _
"update forum " & _
"set [user] = '" & Request.Form("user") & "'," & _
" rubrik = '" & Request.Form("rubrik") & "'," & _
" kommentar = '" & Request.Form("kommentar") & "'," & _
" svar = '" & Request.Form("svar") & "'," & _
" datum = #" & Request.Form("datum") & "#," & _
" usersvar = '" & Request.Form("usersvar") & "'," & _
" datumsvar = #" & Request.Form("datumsvar") & "# " & _
" where id = " & id
connect.execute visa,,128
Connect.Close %>
Jag förutsätter att du använder Access
Lite kommentarer:
User är ett reserverat ord i SQL och måste klamras. Du borde egentligen byta namn.
Datumvärden anges inom ##. (Gäller enbart Access använd ' annars) Jag antog att datum och datumsvar har datatypen date.
------------------
essentitia preter non sans multiplicandum
[Redigerat av LarsG den 26 mar 2001]
PatrikBMedlem sedan mars 20002 836 inlägg .... använd dig av:
.
.
.
RecSet.UpdateBatch
istället för RecSet.Update
cya,
PatrikB
------------------
Ingenting är omöjligt.
Det omöjliga tar bara något längre tid att genomföra.
Tyvärr så får jag fortfarande fel:
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[Microsoft][ODBC Microsoft Access Driver] Syntax error in date in query expression '##'.
/admin/admin_redigeraforum_ok.asp, line 24
KOden ser ut som den som LarsG skrev
@ndersMedlem sedan juni 200032 969 inlägg då är det något av dina datum som du inte får med dig från formuläret till sql-frågan.
skriv ut den färdiga sql-frågan med response.write innan du exekverar den, så kan man lättare se vad som är knas.
------------------
<A HREF="http://cartman.nu" TARGET=_blank>
all your base are belong to us!</A>
ok. Jag vill kunna ha något av datumfälten tomma. Är det det som spökar tro?
@ndersMedlem sedan juni 200032 969 inlägg japp. det skapas en del syntaxfel om man bara hoppar över värden.
skall fältet inte uppdateras om datumvärdet är tomt? isf, får du kolla med en if-sats om värdet du får är tomt, om det är det ska du inte ha med det i din update-fråga.
mvh,
------------------
<A HREF="http://cartman.nu" TARGET=_blank>
all your base are belong to us!</A>
Hur f....n lägger man in en ifsats mitt i alltihop.
Förresten så går det bra med de andra fälten även om de är tomma!!
lite kodhjälp till ifsatsen vore inte helt fel!
@ndersMedlem sedan juni 200032 969 inlägg strängar kan vara tomma, är datum tomt sår värdet null, och det blir trasigt om du anger ##.
Visa = "update forum " & _
"set [user] = '" & Request.Form("user") & "'," & _
" rubrik = '" & Request.Form("rubrik") & "'," & _
" kommentar = '" & Request.Form("kommentar") & "'," & _
" svar = '" & Request.Form("svar") & "',"
if Request.Form("datum") <> "" then Visa = Visa & " datum = #" & Request.Form("datum") & "#," & _
Visa = Visa & " usersvar = '" & Request.Form("usersvar") & "'"
if Request.Form("datumsvar") <> "" then Visa = Visa & ", datumsvar = #" & Request.Form("datumsvar") & "# " & _
Visa = Visa & " where id = " & id
otestat.
------------------
<A HREF="http://cartman.nu" TARGET=_blank>
all your base are belong to us!</A>
Nja!!
Följande feltext kommernu
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[Microsoft][ODBC Microsoft Access Driver] Invalid SQL statement; expected 'DELETE', 'INSERT', 'PROCEDURE', 'SELECT', or 'UPDATE'.
/admin/admin_redigeraforum_ok.asp, line 26
@ndersMedlem sedan juni 200032 969 inlägg
skriv ut den färdiga sql-frågan med response.write innan du exekverar den, så kan man lättare se vad som är knas.
------------------
<A HREF="http://cartman.nu" TARGET=_blank>
all your base are belong to us!</A>
LarsGMedlem sedan dec. 200012 464 inlägg Ja knas var det sa bill.
Knas var ordet sa bull.
Jag såg lite saker i @anders ;) kod
Visa = "update forum " & _
"set [user] = '" & Request.Form("user") & "'," & _
" rubrik = '" & Request.Form("rubrik") & "'," & _
" kommentar = '" & Request.Form("kommentar") & "'," & _
" svar = '" & Request.Form("svar") & "',"
if Request.Form("datum") <> "" then Visa = Visa & " datum = #" & Request.Form("datum") & "#,"
Visa = Visa & " usersvar = '" & Request.Form("usersvar") & "'"
if Request.Form("datumsvar") <> "" then Visa = Visa & ", datumsvar = #" & Request.Form("datumsvar") & "# "
Visa = Visa & " where id = " & id
Jag tog bort & _ på två rader. Men det förklarar inte varför du fick så där. Du får posta lite mer av koden om det inte hjälper.
------------------
essentitia preter non sans multiplicandum
@ndersMedlem sedan juni 200032 969 inlägg nämen, förlåt. :r
klantskaft.
------------------
<A HREF="http://cartman.nu" TARGET=_blank>
all your base are belong to us!</A>
Kanon, nu funkar det perfa
Tack så mycket