webForumDet fria alternativet

Ett felmeddelande till!

ASP

21 svar · 385 visningar · startad av Firegamez.com

Medlem sedan juli 2002231 inlägg
Frågan#1

Ja nu har jag ett till! Jag börjar bli trött på dem! Men jag försöker fixa en knapp... Som när man klickar på den blir man online! Detta är fel meddelandet:

Microsoft JET Database Engine error '80040e14' 

Invalid SQL statement; expected 'DELETE', 'INSERT', 'PROCEDURE', 'SELECT', or 'UPDATE'. 

/community/online.asp, line 8

Hel koden

<%
Option Explicit
Dim online, rsusers
%>
<!--#include file="conn.asp"-->
<%
Set rsusers = Server.CreateObject("ADODB.Recordset")
rsusers.open "on/off", conn, 3, 3
rsusers.Update

rsusers("on/off") = online

rsusers.close
set rsusers = nothing
conn.close
set conn = nothing
Response.Redirect(index.asp)
%>

OBS FIXADE FLERA SAKER SOM JAG GLÖMT!

Medlem sedan juni 200032 967 inlägg
#2

Har du skapat ditt connectionobjekt conn?

I övrigt borde du inte ha slash med i fältnamn i tabellen. Jag föreslår att du byter namn på fältet till något utan specialtecken.

Mvh,

Medlem sedan juli 2002231 inlägg
#3

tror inte det! Men jag ändrade på kolumnen!

Medlem sedan juni 200032 967 inlägg
#4

Om jag vore du skulle jag byta namn på tabell och fält som har slash (dvs ett divisionstecken som databasmotorn tolkar det) till endast onoff exempelvis.

Medlem sedan juli 2002231 inlägg
#5

Det var bara den som hade det.... Fixade det!

Medlem sedan juni 200032 967 inlägg
#6

Hm...
Betyder det att problemet är löst?

Medlem sedan juli 2002231 inlägg
#7

nej samma fel meddelande!

Microsoft JET Database Engine error '80040e14'

Invalid SQL statement; expected 'DELETE', 'INSERT', 'PROCEDURE', 'SELECT', or 'UPDATE'.

/community/online.asp, line 8

Medlem sedan juni 200032 967 inlägg
#8

Och hur ser koden ut nu då?
Och framför allt, skriv noggrant vad du vill att koden ska göra, in i minsta detalj, så kan vi nog se till att göra det på bästa möjliga sätt.

mvh,

Medlem sedan juli 2002231 inlägg
#9

Så här ser koden ut:

<%
Option Explicit
Dim online, rsusers
%>
<!--#include file="conn.asp"-->
<%
Set rsusers = Server.CreateObject("ADODB.Recordset")
rsusers.open "on/off", conn, 3, 3
rsusers.Update

rsusers("on/off") = online

rsusers.close
set rsusers = nothing
conn.close
set conn = nothing
Response.Redirect(index.asp)
%>

Och jag vill att när man klickar på en knapp(Redan fixat) Så ska man bli online på vårat community! Istället att det görs automatiskt när man loggar in! Så får man göra det själv!

Medlem sedan juni 200032 967 inlägg
#10

Hade du inte bytt namn på tabellen on/off resp. fältet on/off?

Hur ser tabellen ut, vilka fält finns där?
Vi måste ju se till att en uppdatering bara görs på den användare som det är frågan om, inte på alla användare.

Varifrån får du detta användar-ID? Session? Querystring?

Medlem sedan feb. 20012 412 inlägg
#11

Vad innehåller filen conn.asp ?

Medlem sedan juli 2002231 inlägg
#12

databas sök vägen så här ser den ut:

<%
Dim ConnectString, conn

ConnectString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("db/siteinabox.mdb")
Set conn = Server.CreateObject("ADODB.Connection")
conn.open ConnectString
%>
Medlem sedan juli 2002231 inlägg
#13

@nders det e bara en kolumn onoff är! Ingen tabell!

Medlem sedan feb. 20012 412 inlägg
#14

Var lagras värdet, jag saknar en SQL-fråga. :OO

Medlem sedan juni 200032 967 inlägg
#15

rsusers.open "on/off", conn, 3, 3

Att skriva så är synonymt med Select * From on/off, alltså vill ADO hämta alla poster från tabellen on/off.

Medlem sedan feb. 20012 412 inlägg
#16

Aha, då har jag lärt mig något idag också. :D

Medlem sedan juli 2002231 inlägg
#17

@nders... on/off är ingen Tabell! Det är en kolumn idatabasen! Dessutom heter den onoff nu eftersom du sa att det inte var något bra med "/"

Medlem sedan juni 200032 967 inlägg
#18

Nej, du har skrivit det. Men i din kod påstår du att det är en tabell. Du har också en del frågor ovan att svara på om det ska bli enklare att hjälpa till.

Medlem sedan juli 2002231 inlägg
#19

asså sudda ut min kod! E det någon som kan göra en färdig???? tabbelen som onoff ligger i heter users! Jag har krånglat till det helt med filen online.asp! Så ni vet!

Medlem sedan juni 20003 076 inlägg
#20

Du får ändra onlineId till vad du tänkt använda. :)

<%
Option Explicit
%>
<!--#include file="conn.asp"-->
<%
Dim strSql, onlineId
onlineId = Request.Querystring("onlineId")
strSql = "Update Users Set onoff = 'online' Where Id = " & onlineId & " ;"
conn.execute strSql,,128

conn.close
set conn = nothing
Response.Redirect(index.asp)
%>
301 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
171 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)