Toon posts:

[ASP] Update , Rare fout..

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hallo, het is de bedoeling dat de gegevens van een medewerker bewerkt kan worden, ik heb als een select.asp, om het te selecteren, een Edit.asp, om de gegevens te bewerken, nu wil de gegevens updaten maar dan geeft hij een fout
in regel 25, in de SQL statement.

ASP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<%@ Language="VBscript" %>
<% dim Conn, RS, tdteller, id, voornaam, achternaam, adres, huisnr
   dim postcode, plaats, telnr, email, gebdat, did

   id = trim(request.querystring("ID"))
   voornaam = trim(request.querystring("voornaam"))
   achternaam = trim(request.querystring("achternaam"))
   adres = trim(request.querystring("adres"))
   huisnr = trim(request.querystring("huisnr"))
   plaats = trim(request.querystring("plaats"))
   postcode = trim(request.querystring("postcode"))
   plaats = trim(request.querystring("plaats"))
   telnr = trim(request.querystring("telnr"))
   email = trim(request.querystring("email"))
   gebdat = trim(request.querystring("gebdat"))
   did = trim(request.querystring("did"))


   Set rs = Server.CreateObject("ADODB.Recordset")
   Set objConn = Server.CreateObject("ADODB.Connection")
   Dim strConnect
   strConnect = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="& _
              Server.MapPath("priconmedewerkers.mdb")
   objConn.open strConnect
   Set rs = objConn.execute ("UPDATE gegevens SET voornaam ='"& voornaam &"', 
        achternaam ='"& achternaam & "', adres ='"& adres &"', huisnr ='"& huisnr &"',
   postcode ='"& postcode &"', plaats ='"& plaats &"', telnr ='"& telnr &"', email ='"& 
               email &"', gebdat ='"& gebdat &"', did ='"& did &"' WHERE id ='" & id &"")  


   %>
<html>
 <font face=verdana size=-2>
  Medewerker succesvol bewerkt<br>
 <a href="login.asp">klik hier</a> om terug te gaan


ik krijg de fout:
Syntaxisfout (operator ontbreekt) in query-expressie id =.
das dus in die query, maar goed, wat is er fout aan?

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Probeer i.p.v.
code:
1
...WHERE id ='" & id &"")


eens

code:
1
...WHERE id =" & id)

;)


...en als je ID niet numeriek is het volgende:

code:
1
...WHERE id ='" & id & "'")

[ Voor 60% gewijzigd door RobIII op 15-04-2003 10:42 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • whoami
  • Registratie: December 2000
  • Laatst online: 21:46
Print even de query naar het scherm voor je hem uitvoert, dan zal je de fout wel direct zelf zien.

code:
1
WHERE id = '1

zal inderdaad niet goed gaan.....

https://fgheysels.github.io/


Verwijderd

Topicstarter
oke bedankt voor snelle reactie, ik zal het even proberen

Verwijderd

Topicstarter
damn, het werkt allebei nog niet,
doe ik
code:
1
...WHERE id =" & id)

krijg ik weer dezelfde fout.

  • whoami
  • Registratie: December 2000
  • Laatst online: 21:46
Print de query eens naar het scherm ipv hem uit te voeren:
Response.Write "...

Dan kan je misschien sneller zien waar er nog een fout in zit.

https://fgheysels.github.io/


  • HawVer
  • Registratie: Februari 2002
  • Laatst online: 17:04
& ";" Toevoegen? Het is altijd wel netjes om een query voor Acces af te sluiten met een punt komma.

[ Voor 80% gewijzigd door HawVer op 15-04-2003 11:44 ]

http://hawvie.deviantart.com/


  • KoeKk
  • Registratie: September 2000
  • Laatst online: 20-08 18:36
HawVer schreef op 15 april 2003 @ 11:43:
& ";" Toevoegen? Het is altijd wel netjes om een query voor Acces af te sluiten met een punt komma.
Maar als de puntcomma ontbreekt is dat geen probleem...

Maar voor de TS: schrijf de query eerst eens naar je scherm, zie je vanzelf of de fout in je query zit :)

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 20-08 11:40

gorgi_19

Kruimeltjes zijn weer op :9

En zorg er ook voor dat je single quotes er uit filtert; vind je db ook niet echt leuk.

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • Theguide
  • Registratie: December 2000
  • Laatst online: 26-06-2025
Bovendien is het zinloos om een recordset aan een update statement op te offeren.
code:
1
objConn.execute (sqlQuery)


Lijkt me voldoende in dit geval.

Fuck me if I'm wrong, but isn't your name Gretchen?


  • Phenomenon
  • Registratie: December 2000
  • Laatst online: 01-04 13:18
in je query ben de laatste komma ' vergeten bij Id


Denk dat dat het probleem is :)

[edit]
Juist jah :D Komt door de warmte O-)

[ Voor 24% gewijzigd door Phenomenon op 15-04-2003 16:36 ]


  • whoami
  • Registratie: December 2000
  • Laatst online: 21:46
Supervisor schreef op 15 April 2003 @ 16:29:
in je query ben de laatste komma ' vergeten bij Id


Denk dat dat het probleem is :)
Lees de draad, voor je blaat. :)

Daar is hem al in de eerste 2 replies op gewezen. Trouwens, als Id numeriek is, dan mogen daar geen quotes (') rond.

https://fgheysels.github.io/


Verwijderd

Topicstarter
ik heb die ' er dus bijgezet, maar geeft nog steeds een fout,

"Waarden voor een of meer vereiste parameters ontbreken."

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 20-08 11:40

gorgi_19

Kruimeltjes zijn weer op :9

Verwijderd schreef op 16 april 2003 @ 10:30:
ik heb die ' er dus bijgezet, maar geeft nog steeds een fout,

"Waarden voor een of meer vereiste parameters ontbreken."
En als je je query op het scherm zet ipv hem uitvoert?

ASP:
1
2
Response.Write EnDanHierJeQuery
Response.End

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • whoami
  • Registratie: December 2000
  • Laatst online: 21:46
Heb je die query nu al eens naar het scherm geprint (zoals hier al meerdere keren voorgesteld werd), en heb je hem dan al eens kritisch bekeken?!

https://fgheysels.github.io/


Verwijderd

Topicstarter
ja dat had ik al eens gedaan, maar dan returned hij dit:

UPDATE gegevens SET voornaam =, achternaam =, adres =, huisnr =, postcode =, plaats =, telnr =, email =, gebdat =, did = WHERE id =

[ Voor 14% gewijzigd door Verwijderd op 16-04-2003 10:38 ]


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 20-08 11:40

gorgi_19

Kruimeltjes zijn weer op :9

Verwijderd schreef op 16 april 2003 @ 10:36:
ja dat had ik al eens gedaan, maar dan returned hij dit:

UPDATE gegevens SET voornaam =, achternaam =, adres =, huisnr =, postcode =, plaats =, telnr =, email =, gebdat =, did = WHERE id = Medewerker succesvol bewerkt
klik hier om terug te gaan
Dan weet je dus nu ook waarom hij het niet doet... Je velden zijn leeg.. Je moet je form met GET verzenden, aangezien je Request.Querystring gebruikt. Als je met POST wil verzenden, moet je request.Form gebruiken.

Maar whoami gaf dat al aan in [rml]whoami in "[ ASP] Update , Rare fout.."[/rml], dat je je query op het scherm moet toveren.. Is een van de meest standaard zaken om mee te beginnen met debuggen.. :)

[ Voor 17% gewijzigd door gorgi_19 op 16-04-2003 10:40 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • Noork
  • Registratie: Juni 2001
  • Niet online
Volgens mij pak je nu id als string. Probeer hem eens eerst om te zetten naar een int.

iets van
code:
1
2
Dim nieuweid
nieuweid = Cint(id)

[ Voor 30% gewijzigd door Noork op 16-04-2003 10:50 ]


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 20-08 11:40

gorgi_19

Kruimeltjes zijn weer op :9

Noork schreef op 16 april 2003 @ 10:42:
Volgens mij pak je nu id als string. Probeer hem eens eerst om te zetten naar een int.
:? Waar heb jij het over? Heb je de laatste post van de TS wel gelezen? En dat maakt niets uit.

ASP:
1
2
Dim strSQL
strSQL = "Select * FROM tablename WHERE ID = " & ID


is hetzelfde als

ASP:
1
2
Dim strSQL
strSQL = "Select * FROM tablename WHERE ID = " & CINT(ID)


(disclaimer: alleen dat het datatype niet uitmaakt wil ik hiermee aantonen)

[ Voor 42% gewijzigd door gorgi_19 op 16-04-2003 10:44 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • Noork
  • Registratie: Juni 2001
  • Niet online
aha, dat wist ik niet gorgi. Ik heb nl. zo'n soort probleem dus wel op deze manier opgelost. Misschien lag het dus ergens anders aan.

Schrijf gewoon even de waarden eerst naar je scherm. Misschien heb je wel quotes o.i.d. om je id staan. Let natuurlijk ook op dat je je sql query wel afsluit met " en natuurlijk geen enkele aanhalingstekens gebruiken om je id.

edit:

Kunnen wij je pagina ook eens ergens bewonderen? Je hebt nu al zoveel vragen over asp gesteld dat ik nieuwsgierig ben geworden naar het resultaat.

[ Voor 20% gewijzigd door Noork op 16-04-2003 10:54 ]


Verwijderd

Topicstarter
gorgi_19 schreef op 16 April 2003 @ 10:38:
[...]

Dan weet je dus nu ook waarom hij het niet doet... Je velden zijn leeg.. Je moet je form met GET verzenden, aangezien je Request.Querystring gebruikt. Als je met POST wil verzenden, moet je request.Form gebruiken.

Maar whoami gaf dat al aan in [rml]whoami in "[ ASP] Update , Rare fout.."[/rml], dat je je query op het scherm moet toveren.. Is een van de meest standaard zaken om mee te beginnen met debuggen.. :)
ik ga het gelijk even proberen, en laat even weten of het werkt,
maar bedankt iig

Verwijderd

Topicstarter
hij werkt, bedankt voor de hulp, het probje was dus wel
'GET'.

bedankt voor de reacties
Pagina: 1