Toon posts:

[ASP] enkele record openen

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik wil uit een database één record halen. Als ik de volgende regel geruik:
myHdb = "SELECT * FROM procHdb WHERE Hfst = 'pr21000'", wordt netjes die ene record geopend.
Nu wil ik eigenlijk een record openen die eerder in het programma in een variabele wordt opgeslagen.
Die variabele heb ik record genoemd en als volgt gedefinïeerd.

Dim record
record= Request.QueryString("record")

Hoe plaats ik die variabele in mijn programma? Ik heb de code (stukje ervan) hieronder ingevoegd. Ik ben nieuw met ASP
dus het kan altijd beter. (werkt dus niet) Wie helpt?

<%
beheerDB = "..\data\beheer.mdb"
myDSN = "DRIVER={Microsoft Access Driver (*.mdb)};"
myDSN = myDSN & "DBQ=" & server.mappath(beheerDB)

set connOpen = server.createobject("ADODB.connection")
connOpen.open myDSN

showblank = " "
shownull = "-null-"
%>
<%
myHdb = "SELECT * FROM procHdb WHERE Hfst = record"
set rsHdb = server.createobject("ADODB.RecordSet")
rsHdb.Open myHdb, connOpen

'set rsHdb = connOpen.execute(myHdb)'
%>
<%= record %>
<H1>Dit is het record dat u wilt verwijderen</H1>
<TABLE BORDER=1 WIDTH=600>
<TR>
<TD WIDTH=75>procedure</TD>
<TD WIDTH=55>revisie</TD>
<TD WIDTH=420>inhoud procedure</TD>
</TR>
</TABLE>
<TABLE BORDER=1 WIDTH=600>
<% Do UNTIL rsHdb.EOF %>
<TR>
<TD WIDTH=75><%= rsHdb("Hfst") %></TD>
<TD WIDTH=55 ALIGN="center" ><%= rsHdb("Rev") %></TD>
<TD WIDTH=420><%= rsHdb("procNaam") %></TD>
</TR>
<% rsHdb.MoveNext
LOOP %>
<TR>
<TD WIDTH="600" COLSPAN="3"> </TD>
</TR>
<TR>
<TD WIDTH="600" COLSPAN="3" ALIGN="center"><INPUT TYPE="submit" NAME="submit" VALUE="doorgaan"><TD>
</TR>

</TABLE>
</FONT>
</FORM>
</BODY>
<%
connOpen.Close
set connOpen = nothing
response.end
%>

Verwijderd

myHdb = "SELECT * FROM procHdb WHERE Hfst = record"
myHdb = "SELECT * FROM procHdb WHERE Hfst = " & record

mits Hfst numeriek is.

Beter is ook de velden die je wilt gebruiken expliciet te noemen ipv een 'SELECT *' te gebruiken.

Vergeet ook niet je recordset te sluiten en op te ruimen. Nu doe je dat alleen met de connectie

  • Greyfox
  • Registratie: Januari 2001
  • Laatst online: 15-09 22:50

Greyfox

MSX rulez

Je doet het bijna goed.
Je moet alleen de variabele tussen ' zetten.
Dat wordt dan dus:
code:
1
"select * from x where y = '" & record & "'"

MSX 2 rulez more


  • dominic
  • Registratie: Juli 2000
  • Laatst online: 15-09 20:25

dominic

will code for food

Als een identity een integer is, en da's eigenlijk altijd zo, dan hoeft het niet tussen ' ' , pas als je op velden gaat queryen die varchars etc zijn.

Mocht deze selectie niet uitgevoerd worden op de identity, maar op een ander veld (Wat niet verstandig is omdat deze niet uniek kan zijn) dan idd ' ' gebruiken.

Download my music on SoundCloud


  • disjfa
  • Registratie: April 2001
  • Laatst online: 12-05 15:11

disjfa

be

of je gaat met ado spelen en absoluterecord gebruiken :)

dus doe je een recordcount en daar een bepaad nummer van :)

disjfa - disj·fa (meneer)
disjfa.nl