Avatar billede kiddoe Nybegynder
10. maj 2006 - 14:22 Der er 7 kommentarer og
1 løsning

hjælp til delete i gæstebog

Hej - jeg har fået lavet en gæstebogsystem så hver bruger har sin egen - gæstebogen virker fint bortset fra at jeg kan ikke få delete funtionen til at virke!!

////jeg får denne fejl

Syntax error (missing operator) in query expression 'REVIEW_SITE = AND REVIEW_ACTIVE = True'.

// forkortet ser gæstebogen sådan ud

<%DIM REVIEW_ID,REVIEW_SITE,RS_SHOWDELETE_ID,rs_review_delete,side_id,RSSHOW_REVIEWS,RSSHOW_SITE_NAME,action,TXT_NAVN,TXT_HEAD,TXT_TXT,RS_SUBMIT_REV
action        =    REQUEST.QUERYSTRING("action")
side_id        =    REQUEST.QUERYSTRING("SIDE_ID")
REVIEW_id    =    REQUEST.QUERYSTRING("REVIEW_ID")
TXT_NAVN    =    REQUEST.FORM("TXT_NAVN")
TXT_HEAD    =    REQUEST.FORM("TXT_HEAD")
TXT_TXT        =    REQUEST.FORM("TXT_TXT")

<%IF action = "tilfoj" THEN%>

// tilføj post virker

END IF%>

<%ELSEIF action = "tilfojet" THEN%>

//ok melding virker

<%ELSEIF action = "slet" THEN
    SET RS_REVIEW_DELETE = SERVER.CREATEOBJECT("ADODB.RECORDSET")
    RS_REVIEW_DELETE.OPEN "DELETE * FROM GAESTEBOG WHERE REVIEW_id = "& REVIEW_id &"", DBCONN, 1 , 3
    RESPONSE.REDIRECT "gaestebog.asp?action=slettet&side_id="&side_id%>

<%ELSEIF action = "SLETTET" THEN%>
// besked om sletning

<%ELSE%>
///her kommer selve gæstebogen med et link til sletning ud for hver post så ejeren selv kan rydde op - linket har jeg lavet sådan her
<A HREF="gaestebog.asp?action=slet&review_id=<%=RSSHOW_REVIEWS("REVIEW_ID")%>">slet posten</A>

--------------
Men ved klik giver det så omtalte fejl.
Avatar billede fennec Nybegynder
10. maj 2006 - 14:35 #1
Fejlen skyldes at der ikke er nogen værdi i REVIEW_id variablen. Prøv lige at udskriv den til skærmen inden du sletter, for at tjekke at den ikke er tom.
Avatar billede fennec Nybegynder
10. maj 2006 - 14:37 #2
Det er da ikke rigtigt...
Den SQL sætning du får fejlen i er ikke deleten. Det kan jeg da se, fordi den slutter med 'REVIEW_SITE = AND REVIEW_ACTIVE = True', og "REVIEW_ACTIVE = True" er slet ikke med på delete linjen.

Fejlen må ligge i en anden linje...
Avatar billede kiddoe Nybegynder
10. maj 2006 - 14:44 #3
hovsa - jeg glemte da at smide dette på - det ser sådan ud

<%DIM REVIEW_ID,REVIEW_SITE,RS_SHOWDELETE_ID,rs_review_delete,side_id,RSSHOW_REVIEWS,RSSHOW_SITE_NAME,action,TXT_NAVN,TXT_HEAD,TXT_TXT,RS_SUBMIT_REV
action        =    REQUEST.QUERYSTRING("action")
side_id        =    REQUEST.QUERYSTRING("SIDE_ID")
REVIEW_id        =    REQUEST.QUERYSTRING("REVIEW_ID")
TXT_NAVN    =    REQUEST.FORM("TXT_NAVN")
TXT_HEAD    =    REQUEST.FORM("TXT_HEAD")
TXT_TXT        =    REQUEST.FORM("TXT_TXT")

SET RSSHOW_REVIEWS = SERVER.CREATEOBJECT("ADODB.RECORDSET")
RSSHOW_REVIEWS.OPEN "SELECT * FROM GAESTEBOG WHERE REVIEW_SITE = "& side_id &" AND REVIEW_ACTIVE = "& True &" ORDER BY REVIEW_DATE DESC", DBCONN, 3, 3
SET RSSHOW_SITE_NAME = SERVER.CREATEOBJECT("ADODB.RECORDSET")
RSSHOW_SITE_NAME.OPEN "SELECT * FROM USERS WHERE BRUGERID = "& side_id &"", DBCONN, 3, 3
%>
Avatar billede kiddoe Nybegynder
10. maj 2006 - 14:47 #4
man går til gæstebogen med -
<A HREF="gaestebog.asp?side_id=<%=RS_SHOW_PROFILES("BRUGERID")%>

hvor brugerid = review_site i gæstebogen
Avatar billede fennec Nybegynder
10. maj 2006 - 15:01 #5
Det kunne se ud som om fejlen opstår i denne linje:
RSSHOW_REVIEWS.OPEN "SELECT * FROM GAESTEBOG WHERE REVIEW_SITE = "& side_id &" AND REVIEW_ACTIVE = "& True &" ORDER BY REVIEW_DATE DESC", DBCONN, 3, 3

fordi side_id er tom. Det kan klares ved at smide den med på url'en:
<A HREF="gaestebog.asp?action=slet&side_id=<%= side_id %>&review_id=<%=RSSHOW_REVIEWS("REVIEW_ID")%>">slet posten</A>
Avatar billede kiddoe Nybegynder
10. maj 2006 - 15:02 #6
den er ikke tom  - den viser

/gaestebog.asp?action=slet&review_id=8
Avatar billede kiddoe Nybegynder
10. maj 2006 - 15:06 #7
når ja - så virker det sørme!
mange tak fennec - lægger du et svar
Avatar billede fennec Nybegynder
10. maj 2006 - 15:10 #8
.o) <-- One Eyed Jack
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