Avatar billede flashit Nybegynder
16. januar 2004 - 10:05 Der er 21 kommentarer og
4 løsninger

Endnu en SQL som driller

Hej E.

Jeg er gået helt død i denne sql.
DbObj.Execute("UPDATE disper SET Navn = " & request.form("txtInit") & ", Navn2 = " & request.form("txtNavn") & ", Mobil = " & request.form("txtMobil") & ", SubTeam = " & request.form("Sub") & "', WHERE id=" & Request.QueryString("id") ")

Fejlen som kommer er:
Microsoft VBScript compilation (0x800A0409)
Unterminated string constant

Og det som bliver sendt til siden er:
GemOpdateringer.asp?id=40

Håber i kan hjælpe mig.
Avatar billede Spotgun Seniormester
16. januar 2004 - 10:08 #1
Du mangler et & tegn til sidst... lige mellem QueryString("id") og ")
Avatar billede Spotgun Seniormester
16. januar 2004 - 10:08 #2
...eller også fjerner du bare den sidste ", inden den afsluttende parentes, så skulle det også virke.
Avatar billede flashit Nybegynder
16. januar 2004 - 10:11 #3
Samme fejl :-(
DbObj.Execute("UPDATE disper SET Navn = " & request.form("txtInit") & ", Navn2 = " & request.form("txtNavn") & ", Mobil = " & request.form("txtMobil") & ", SubTeam = " & request.form("Sub") & "', WHERE id=" & Request.QueryString("id") & ")
Avatar billede Spotgun Seniormester
16. januar 2004 - 10:12 #4
My bad... Kig på min 2. kommentar - den burde virke...

Sidder bag skærmen, på vej ned med infuenza, så jeg tænker ikke fandens klart længere :)
Avatar billede Spotgun Seniormester
16. januar 2004 - 10:14 #5
DbObj.Execute("UPDATE disper SET Navn = " & request.form("txtInit") & ", Navn2 = " & request.form("txtNavn") & ", Mobil = " & request.form("txtMobil") & ", SubTeam = " & request.form("Sub") & "', WHERE id=" & Request.QueryString("id"))

...og nu vi er igang, så ved jeg ikke hvilen database eller fejltyper du kører med, men det kunne lade til at der var tale om tekstfelter, og så burde din SQL nok se sådan her ud:

DbObj.Execute("UPDATE disper SET Navn = '" & request.form("txtInit") & "', Navn2 = '" & request.form("txtNavn") & "', Mobil = '" & request.form("txtMobil") & "', SubTeam = '" & request.form("Sub") & "', WHERE id = " & Request.QueryString("id"))
Avatar billede flashit Nybegynder
16. januar 2004 - 10:23 #6
Jeg er vist helt gal på den.
Når jeg bruger:

response.write ("UPDATE disper SET Navn = '" & request.form("txtInit") & "', Navn2 = " & request.form("txtNavn") & ", Mobil = " & request.form("txtMobil") & ", SubTeam = " & request.form("Sub") & ", WHERE id=" & Request.QueryString("id"))

Så kommer følgende:
UPDATE disper SET Navn = '', Navn2 = , Mobil = , SubTeam = , WHERE id=40

og det virker jo sjovt nok ikke ;-)

Den måde at jeg får indhldet ind i mine forms er følgende:
<input type="text" name="txtInit" value="<%=tabel("Navn")%>">

osv.
Avatar billede medions Nybegynder
16. januar 2004 - 10:24 #7
DbObj.Execute("UPDATE disper SET [Navn] = " & request.form("txtInit") & ", Navn2 = " & request.form("txtNavn") & ", Mobil = " & request.form("txtMobil") & ", SubTeam = " & request.form("Sub") & "', WHERE [id]=" & Request.QueryString("id"))

//>Rune
Avatar billede flashit Nybegynder
16. januar 2004 - 10:24 #8
ps.
<input type="text" name="txtInit" value="<%=tabel("Navn")%>">
giver det resultat som jeg er ude efter
Avatar billede medions Nybegynder
16. januar 2004 - 10:25 #9
Det er fordi du ikke få sendt nogen data til fin SQL sætning!

ser din form sådan her ud?

<form action="filnavn.asp" method="post">

Altså hvor du har en method der hedder post?

//>Rune
Avatar billede flashit Nybegynder
16. januar 2004 - 10:28 #10
Her er den:
<form name="form1" method="post" action="GemOpdateringer.asp?id=<%=tabel("id")%>">
Avatar billede squashguy Nybegynder
16. januar 2004 - 10:30 #11
Hvis du har svært ved at holde tungen lige i munden, kan du dele sætningen over flere linier..

txtInit = Replace(request.form("txtInit"), "'", "''")
txtNavn = Replace(request.form("txtNavn"), "'", "''")
txtMobil = Replace(request.form("txtMobil"), "'", "''")
subTeam = Replace(request.form("Sub"), "'", "''")


id = Request.QueryString("id")

If IsNumeric(id) And id <> "" Then
    sql = _
        "UPDATE disper SET " &_
        "Navn = '" & txtInit & "'," &_
        "Navn2 = '" & txtNavn & "'," &_
        "Mobil = '" & txtMobil & "'," &_
        "SubTeam = '" & subTeam & "' " &_
        "WHERE id = " & id

    DbObj.Execute(sql)
Else
Response.Write "noget gik galt ved submit..."
End If

+ jeg har tilføjet lidt sikker ved Replace()

Som medion siger:

<form action="filnavn.asp?id=var" method="post">
Avatar billede flashit Nybegynder
16. januar 2004 - 10:31 #12
Mån ikke det skal være noget som :
<form name="form1" method="post" action="GemOpdateringer.asp?id=<%=tabel("id")%>&Navn=<%=tabel("Navn")%>">
Avatar billede squashguy Nybegynder
16. januar 2004 - 10:31 #13
din form..

<form action="test.asp?id=112" method="post">
<input name="txtnavn" type="text">
...
<input type="submit">
</form>
Avatar billede medions Nybegynder
16. januar 2004 - 10:32 #14
Se så skal det oxo firke det du har lavet!

//>Rune
Avatar billede flashit Nybegynder
16. januar 2004 - 10:36 #15
Her er hvad jeg får udskrevet:
UPDATE disper SET Navn = 'JkMi', Navn2 = Jakob Mikkelsen, Mobil = 11 11 11 11, SubTeam = SubA, WHERE id=40

ved følgende link:
<form name="form1" method="post" action="GemOpdateringer.asp?id=<%=tabel("id")%>&Navn=<%=tabel("Navn")%>">
Avatar billede flashit Nybegynder
16. januar 2004 - 10:37 #16
Men hvor kommer ' ' fra ved 'jkmi'?
Avatar billede flashit Nybegynder
16. januar 2004 - 10:38 #17
Jeg skal lige ud og løbe i en lille time, men håber i vil hjælpe bagefter :-)
Ellers Mange TAK for hjælpen
Avatar billede flashit Nybegynder
16. januar 2004 - 11:37 #18
Hej Igen

Jeg tror at det er min sql, som driller:
DbObj.Execute ("UPDATE disper SET Navn = '" & request.form("txtInit") & "', Navn2 = '" & request.form("txtNavn") & "', Mobil = '" & request.form("txtMobil") & "', SubTeam = '" & request.form("Sub") & "', WHERE id=" & Request.QueryString("id"))

Eller hvad?
Avatar billede Spotgun Seniormester
16. januar 2004 - 11:44 #19
Prøv at udskrive SQL'en igen, og lad os se hva' den siger denne gang...
Avatar billede flashit Nybegynder
16. januar 2004 - 11:46 #20
UPDATE disper SET Navn = 'sfr', Navn2 = 'aewfef', Mobil = 'aewf', SubTeam = 'SubA', WHERE id
Alle felter i db'en er tekst felter
Avatar billede Spotgun Seniormester
16. januar 2004 - 11:56 #21
Det eneste det er galt med nu, er dit ID-felt, som sendes med fra formularen...
Avatar billede flashit Nybegynder
16. januar 2004 - 11:58 #22
Sorry, den var ikke blevet "klippet" med:
UPDATE disper SET Navn = 'sfr', Navn2 = 'aewfef', Mobil = 'aewf', SubTeam = 'SubA', WHERE id=46
Avatar billede squashguy Nybegynder
16. januar 2004 - 12:00 #23
fjern komma efter

ubTeam = 'SubA',
Avatar billede flashit Nybegynder
16. januar 2004 - 12:09 #24
Yahoo, det virker :-))

squashgoy, lægger du ikke lige et spg.
Og Der er points til alle, de I har været så tålmodige.

MANGE TAK
Avatar billede flashit Nybegynder
16. januar 2004 - 12:10 #25
da I har været så tålmodige.
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