/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Syntaksfejl i UPDATE-sætningen
Fra : Jakob Lüth


Dato : 30-04-03 19:56

Når jeg køre følgene kode, kommer følgene fejl:

Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC Microsoft Access-driver] Der er en syntaksfejl i
UPDATE-sætningen.
/nykontakt.asp, line 39

nykontakt.asp ser ud som følger:

' SQL forespørgsel'
dim strSQL, rs
strSQL = "Select * from Konkakt Where Gang='" & Session("user") &
"'"

' Udfør forespørgsel (rs indeholder nu resultatet)'
Set rs = Conn.Execute(strSQL)

If Request.Form("klik") = "Opdater" Then
   If Request.Form("fornavn") = "" Or Request.Form("efternavn") =
"" Or Request.Form("vaerelse") = "" Or Request.Form("tlf") = ""
Or Request.Form("email") ="" Then
      Response.Redirect "kontakt.asp"
   Else
      strSQL = "Update Kontakt set"
      strSQL = strSQL & "Fornavn ='" & Request.Form("fornavn") & "',"
      strSQL = strSQL & "Mellemnavn='" & Request.Form("mellemnavn") &
"',"
      strSQL = strSQL & "Efternavn='" & Request.Form("efternavn") &
"',"
      strSQL = strSQL & "Værelse='" & Request.Form("vaerelse") & "',"
      strSQL = strSQL & "tlf='" & Request.Form("tlf") & "',"
      strSQL = strSQL & "Mobil='" & Request.Form("mobil") & "',"
      strSQL = strSQL & "'Email'='" & Request.Form("email") & "'"
      If Request.Form("gpass") = rs("kode") Then
         If Request.Form("npass1") = Request.Form("npass2") Then
            strSQL = strSQL & ",Kode='" & Request.Form("npass1") & "'"
         End If
      End If

      strSQL = strSQL & "Where Gang=" & Session("user")
      Conn.Execute(strSQL)
   End If
   Conn.Close
   Set Conn = Nothing
   Response.Redirect "db.asp"
Elseif Request.Form("klik") = "Tilbage" Then
   Conn.Close
   Set Conn = Nothing
   Response.Redirect "oversigt.asp"
Else
   Conn.Close
   Set Conn = Nothing
   Response.Redirect "intern.asp"



--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Arne (30-04-2003)
Kommentar
Fra : Arne


Dato : 30-04-03 20:04


[snip].....

& "Værelse='" & Request.Form("vaerelse") & "',"
> strSQL = strSQL & "tlf='" & Request.Form("tlf") & "',"
> strSQL = strSQL & "Mobil='" & Request.Form("mobil") & "',"
> strSQL = strSQL & "'Email'='" & Request.Form("email") & "'"

herfra...........

> If Request.Form("gpass") = rs("kode") Then
> If Request.Form("npass1") = Request.Form("npass2") Then
> strSQL = strSQL & ",Kode='" & Request.Form("npass1") & "'"
> End If
> End If

og hertil hører vist ikke til indeni din sql-sætning! Få styr på dine IF`er
INDEN du laver din sql-sætning og så vil tingene virke.

>
> strSQL = strSQL & "Where Gang=" & Session("user")
> Conn.Execute(strSQL)
> End If
> Conn.Close
> Set Conn = Nothing
> Response.Redirect "db.asp"
> Elseif Request.Form("klik") = "Tilbage" Then
> Conn.Close
> Set Conn = Nothing
> Response.Redirect "oversigt.asp"
> Else
> Conn.Close
> Set Conn = Nothing
> Response.Redirect "intern.asp"




--
mvh.
Arne Rasmussen
www.rasweb.dk



Jens Gyldenkærne Cla~ (30-04-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 30-04-03 23:09

Arne skrev:

> herfra...........

> og hertil hører vist ikke til indeni din sql-sætning!

Der er ikke noget galt i at have IF-sætninger inde i *opbygningen*
af en sql-sætning. Bare de ikke kommer ind i selve sql'en.

> Få styr på dine IF`er INDEN du laver din sql-sætning og så vil
> tingene virke.

Nej - der mangler (mindst) et mellemrum i koden før den virker. En
udskrift af sql-sætningen efter den er samlet vil vise hvor (se
også mit andet svar).
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Jens Gyldenkærne Cla~ (30-04-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 30-04-03 23:06

Jakob Lüth skrev:

> Når jeg køre følgene kode, kommer følgene fejl:
>
> Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
> [Microsoft][ODBC Microsoft Access-driver] Der er en
> syntaksfejl i UPDATE-sætningen.
> /nykontakt.asp, line 39

Det gyldne råd: udskriv sql-sætningen.

Læs her hvordan og hvorfor: <http://asp-faq.dk/article/?id=41>

Du mangler et mellemrum et sted i din kode. Hvis du udskriver sql-
sætningen er det ganske let at se hvor (prøv selv).
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Ryan Dahl (02-05-2003)
Kommentar
Fra : Ryan Dahl


Dato : 02-05-03 00:26

On Wed, 30 Apr 2003 18:56:18 +0000 (UTC), Jakob Lüth <luth@nybro.dk>
wrote:

>Når jeg køre følgene kode, kommer følgene fejl:
>
>Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
>[Microsoft][ODBC Microsoft Access-driver] Der er en syntaksfejl i
>UPDATE-sætningen.
>/nykontakt.asp, line 39
>
>' SQL forespørgsel'
>dim strSQL, rs
>strSQL = "Select * from Konkakt Where Gang='" & Session("user") &
>"'"
Her har en stavefejl vist sneget sig ind. Du kalder senere din tabel
for 'kontakt'.

>      strSQL = strSQL & "'Email'='" & Request.Form("email") & "'"

Her skal der nok ikke sættes ' omkring Email.

>            strSQL = strSQL & ",Kode='" & Request.Form("npass1") & "'"
>         End If
>      End If
>
>      strSQL = strSQL & "Where Gang=" & Session("user")

Jeg ved ikke umiddelbart om det har betydning at der mangler et
mellemrum før "Where Gang... ", når der er en ' lige før. Der er
ihvertfald rodet

Det var lige hvad jeg kunne finde i denne omgang. Held og lykke med
det.

mvh
Ryan

Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408528
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste