Avatar billede hansen Nybegynder
29. juni 2002 - 13:24 Der er 7 kommentarer og
1 løsning

Expected statement ???

Nedenstående kode er et klip fra noget jeg har liggende, men det giver mig en fejl jeg ikke kan greje ??
Kan du se hvad der er galt !

strSQL = "INSERT INTO links (catid, title, description, hits, votes, rating, url, email, "_
& "recipurl, contact, comments, active, datein, popular, emailopt, userid, posts, threads, hitsin, dhitsin, mhitsin, ldayin, lmonthin, linktype ) " _
& "VALUES ( '" & Request.Form("catid") & "', '" _
& SQLEncode(Request.Form("title")) & "', '" _
& SQLEncode(Request.Form("desc")) & "', '" _
& "0', '" _
& "0', '" _
& "0', '" _
& SSQLEncode(Request.Form("url")) & "', '" _
& SSQLEncode(Request.Form("email")) & "', '" _
& SSQLEncode(Request.Form("recipurl")) & "', '" _
& SQLEncode(Request.Form("name")) & "', '" _
'& SSQLEncode(Request.Form("comment")) & "', " _
& SSQLEncode(Request.Form("comment")) & "|" & SSQLEncode(Request.Form("language")) & "|" & SSQLEncode(Request.Form("version")) & "', " _
'& Replace(SSQLEncode(Request.Form("comment")),"|", " ") & "|" & Replace(SSQLEncode(Request.Form("language")),"|", " ") & "|" & Replace(SSQLEncode(Request.Form("version")),"|", " ") & "', " _
& active & ", '"& date &"' , " & myFalse & ", " & Request.Form("emailopt") & ", 0, 0, 0, 0, 0, 0, 0, 0, " & linktype & " );"

Error:
Microsoft VBScript compilation error '800a0400'

Expected statement

/addlinkexec.asp, line 251

& SSQLEncode(Request.Form("comment")) & "|" & SSQLEncode(Request.Form("language")) & "|" & SSQLEncode(Request.Form("version")) & "', " _
^
Avatar billede jakoba Nybegynder
29. juni 2002 - 13:30 #1
jeg tror du tæller en linie galt, linien ovenover starter med tegnene  '&  istedet for blot & som det bør være.
Det gør linien nedenunder forresten også :-)

mvh JakobA
Avatar billede jakoba Nybegynder
29. juni 2002 - 13:34 #2
i første linie skal det vist bare fjernes, i den anden skal det nok lægges ind imellem "-erne bagest i linien ovenover

& SSQLEncode(Request.Form("comment")) & "|" & SSQLEncode(Request.Form("language")) & "|" & SSQLEncode(Request.Form("version")) & "', '" _
& Replace(SSQLEncode(Request.Form("comment")),"|", " ") & "|" &
Avatar billede eagleeye Praktikant
29. juni 2002 - 14:01 #3
Det er fordi du har udkommenteret en linie samtidig med du bruger _. Når man bruger _ skal den forsætte i næste linie og af en eller anden grund kan man ikke havde udkommenterede linine ind i mellem
underscorne... Prøv at fjerne de to linier du har udkommenteret.
Avatar billede eagleeye Praktikant
29. juni 2002 - 14:03 #4
Hvis du vil havde mulighed for at kunne udkommentere en linie må du droppe _ og bygge din SQL op på den måde:

strSQL = "INSERT INTO links (catid, title, description, hits, votes, rating, url, email, "
strSQL = strSQL & "recipurl, contact, comments, active, datein, popular, emailopt, userid, posts, threads, hitsin, dhitsin, mhitsin, ldayin, lmonthin, linktype ) "
strSQL = strSQL & "VALUES ( '" & Request.Form("catid") & "', '"
strSQL = strSQL & SQLEncode(Request.Form("title")) & "', '"
strSQL = strSQL & SQLEncode(Request.Form("desc")) & "', '"
strSQL = strSQL & "0', '"
strSQL = strSQL & "0', '"
strSQL = strSQL & "0', '"

osv.......

strSQL = strSQL & active & ", '"& date &"' , " & myFalse & ", " & Request.Form("emailopt") & ", 0, 0, 0, 0, 0, 0, 0, 0, " & linktype & " );"
Avatar billede eagleeye Praktikant
29. juni 2002 - 14:04 #5
Så kan man nemlig udkommenter en af linerne eks:

strSQL = "INSERT INTO links (catid, title, description, hits, votes, rating, url, email, "
strSQL = strSQL & "recipurl, contact, comments, active, datein, popular, emailopt, userid, posts, threads, hitsin, dhitsin, mhitsin, ldayin, lmonthin, linktype ) "
strSQL = strSQL & "VALUES ( '" & Request.Form("catid") & "', '"
strSQL = strSQL & SQLEncode(Request.Form("title")) & "', '"
'strSQL = strSQL & SQLEncode(Request.Form("desc")) & "', '"  '<--så er den væk uden fejl
strSQL = strSQL & "0', '"
Avatar billede jakoba Nybegynder
29. juni 2002 - 14:09 #6
Ups. jeg har meget at lære om asp ;(
eagleeye >>  kan man evt skrive
  _ 'det udkommenterede
eller skal ' være første tegn på linien?
Avatar billede eagleeye Praktikant
29. juni 2002 - 14:29 #7
Det er ikke ' som er problemmet den kan slå efter kode eller først i en linie:
if a=b then 'Tjek om a er lig b
'jubii a var lig b
end if
Det går fint

Det et _ som er problemmet. _ skal stå som sidste karakter på en linie og den næste linie som følger skal indeholde kode.

Så:
_ 'kommentar
giver samme fejl. Personligt er jeg modstander af _ når man kan lave det relativt let som jeg har vist (29/06-2002 14:03:25), men det kan være nødvendig at bruger den hvis man har en if sætning som er for stor til at overskue på en linie og det er nædvendigt at dele op på flere linie.

Det er prisen man må betale når man ikke har en rigtig End-Of-Line karakter som i C/C++/JavaScritpt (;): End-Of-line er Return eller ' som starter en kommentar.

Håber det hjælper dig lidt.
Avatar billede hansen Nybegynder
30. juni 2002 - 15:07 #8
takker, det virkede...
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