Toon posts:

[ASP] Te weinig parameters

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hallo lezer,

Ik wil graag mijn teksten voor mijn site uit een database halen, dit werkt allemaal harstikke mooi met de onderstaande code:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<%
Dim adoconTekst
Dim rsTekst
Dim strSQLTekst
 
Set adoconTekst = Server.CreateObject("ADODB.Connection") 
adoconTekst.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("tekst.mdb") 
Set rsTekst = Server.CreateObject("ADODB.Recordset")

strSQLTekst = "SELECT * FROM tbltekst WHERE id = " & Request.Querystring("id")
rsTekst.CursorType = 3

rsTekst.Open strSQLTekst, adoconTekst
%>
<!-- RSPWRTE -->
<%=rsNieuws("tekst")%>


De ID functie werkt echter alleen met cijfers dwz als ik als ID 1 heb dan zie ik mn tekst wel en als ik bijvoorbeeld als ID "boeken" ( wat de bedoeling is ) heb dan werkt het niet en krijg ik de foutmelding van te weinig parameters.

Zit er nu een fout in mijn script of doe ik iets verkeerd in mn MDB ?

tis misschien een n00b vraag maar ik hoop dat jullie me verder kunnen helpen

mvg Thijs

  • Tommel
  • Registratie: November 2000
  • Niet online
Zet je boeken dan wel tussen enkele quotes ?

  • mulder
  • Registratie: Augustus 2001
  • Laatst online: 00:27

mulder

ik spuug op het trottoir

SQL fout, single quotes om een string doen.

oogjes open, snaveltjes dicht


  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 12:00

Janoz

Moderator Devschuur®

!litemod

Beeld die strSQLTekst eens af (met een msgbox oid) en vergelijk deze eens met hoe je die query eigenlijk zelf in access zou willen uitvoeren. (Als het hetzelfde is, over naar plan B: probeer ook werkelijk die query zo uit te voeren zoals jij dacht dat ie zou moeten werken)

Ik neem aan dat je dan snel in zult zien welke tekentjes je vergeten bent :).

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


  • Ramon
  • Registratie: Juli 2000
  • Laatst online: 21:09
is je veld niet gewoon nummeriek?

btw je moet niet direct Request.QueryString in SQL gebruiken, is nogal 'hackgevoelig'.

Check mijn V&A ads: https://tweakers.net/aanbod/user/9258/


Verwijderd

Topicstarter
Tommel schreef op 25 November 2002 @ 13:44:
Zet je boeken dan wel tussen enkele quotes ?
nee dit is een vb van mn tabel

id | tekst | onderwerp
------------------------------------------------------
boeken | Hallo mensen | Test


ik hoop dat je me begrijpt, tis misschien onduidelijk :'(
is je veld niet gewoon nummeriek?
neej is niet het geval

[ Voor 11% gewijzigd door Verwijderd op 25-11-2002 13:49 ]


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 15:58

gorgi_19

Kruimeltjes zijn weer op :9

Hij doelde op het gebruik van single quotes in je query statement

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

code:
1
strSQLTekst = "SELECT * FROM tbltekst WHERE id = '" & Request.Querystring("id") & "'"


toch :?

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 15:58

gorgi_19

Kruimeltjes zijn weer op :9

Dat is hem, maar daar wilden we hem zelf achter laten komen, gok ik. Anders leert TS er weinig van.

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

Topicstarter
het werk !!! maar kunnen jullie me in normaal NL's ;) misschien ook uitleggen wat het verschil is ?

thnx mensen !!!

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 15:58

gorgi_19

Kruimeltjes zijn weer op :9

Wat is het verschil tussen:
code:
1
2
3
4
Dim a
Dim b
a = "5"
b = 5

[ Voor 18% gewijzigd door gorgi_19 op 25-11-2002 13:54 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

gorgi_19 schreef op 25 november 2002 @ 13:53:
[...]

Dat is hem, maar daar wilden we hem zelf achter laten komen, gok ik. Anders leert TS er weinig van.
ik zeg niets meer ;) of in ieder geval niet veel meer alleen maar hints ;)

  • Tommel
  • Registratie: November 2000
  • Niet online
Verwijderd schreef op 25 November 2002 @ 13:53:
het werk !!! maar kunnen jullie me in normaal NL's ;) misschien ook uitleggen wat het verschil is ?

thnx mensen !!!
Het ene is numeriek, geen single quotes het andere is een string en dat moet wel tussen single quotes.

  • jopiek
  • Registratie: September 2000
  • Laatst online: 21-08 19:56

jopiek

Tja... 'ns ff denken.

ook leuk als je zoiets in bijv. Delphi doet:

Query := 'Select * From Tablename Where Naam = ''' + JopieK.Text + '''';

;)

maar Lighting_Man een beetje verdiepen in hoe men programmeert zou iets handiger zijn voor je...

Cogito Ergo Credo

Pagina: 1