nedcomp hosting homepage

Producten en diensten
Dedicated servers
Datacenter informatie
Partners, resellers
Helpdesk informatie
Technische docs, tools
Support homepage
ASP componenten
Praktische ASP, ASP.NET
Visual route server
Whois (domein gegevens)
Software documentatie
Whitepapers
Zoeken
Nedcomp / algemeen

Zoeken
 

Copyright © Nedcomp Hosting
Telefoon nr :   +31 184 670111
Fax nummer :   +31 184 631384
E-mailadres :   info@nedcomp.nl
 

Broncode: database script 2, disconnected recordset

Dit script vult een disconnected recordset met gegevens uit een database en geeft die gegevens vervolgens weer in een pagina. Het script bevat een formulier waarmee naar artikelen in de database gezocht kan worden.

zie ook: meer informatie    een demonstratie

<%
'// Declaratie van variabelen vereist maken.
Option Explicit
Function GetRecordset(objRS, sQuery, sDSN)
'--------------------------------------------------------------------------------------------
' Recordset invullen. De functie geeft het aantal gevonden
' records als resultaat of udERROR (-2) bij een fout.
'--------------------------------------------------------------------------------------------
Const adOpenStatic = 3, adUseClient = 3, adLockReadOnly = 1
Dim objConn
    '// Bij problemen doorgaan met het uitvoeren van de code.
    On Error Resume Next
    '// Connection object maken en meteen de connectie openen.
    Set objConn = Server.CreateObject("ADODB.Connection")
    objConn.Open sDSN
    '// Wanneer er fouten zijn opgetreden de error-status retourneren.
    If Err <> 0 Then
        Set objConn = Nothing
        GetRecordset = udERROR
        Exit Function
    End If
    '// Recordset met gegevens invullen. We maken gebruik van
    '// een client-side cursor voor een disconnected recordset.
    Set objRS = Server.CreateObject("ADODB.Recordset")
    objRS.CursorLocation = adUseClient
    objRS.Open sQuery, objConn, adOpenStatic, adLockReadOnly
    '// Disconnected recordset maken
    Set objRS.ActiveConnection = Nothing
    '// De connectie hebben we niet meer nodig bij een disconnected recordset. Dat bespaard bronnen!
    objConn.Close: Set objConn = Nothing
    '// Wederom een controle op eventuele problemen.
    If Err <> 0 Then
        GetRecordset = udERROR
    Else
        '// Bij succes het aantal records retourneren.
        GetRecordset = objRS.RecordCount
    End If
End Function
Function NotNull(vValue)
'-----------------------------------------------------------------------------------------
' Null-waarden opvangen ter voorkoming van scripterrors.
'-----------------------------------------------------------------------------------------
 
    If IsNull(vValue) Then
        NotNull = Empty
    Else
        NotNull = vValue
    End If
End Function
'----------------------------------------------------------------------------------
'---- Begin Hoofdprocedure -------------------------------------->
'----------------------------------------------------------------------------------
Dim objRS, sQuery, sDSN, lRecordCount, sParameter
Const udERROR = -2, udNOCRITERIA = -3
On Error Resume Next
    '// De opgegeven artikelnaam bepalen.
    sParameter = Trim(Request.Form("artikelnaam"))
    If sParameter = "" Then
        '// Aangeven dat er geen criteria is zodat we de juiste html kunnen weergeven.
        lRecordCount = udNOCRITERIA
    Else
        '// Quotes verdubbelen voor gebruik in query's.
        sParameter = Replace(sParameter, "'", "''")
        '// De query samenstellen, deze moet u aanpassen aan uw database.
        sQuery = "SELECT * FROM tbl_Artikelen " _
        & "WHERE tbl_Artikelen.artikelnaam LIKE '%" & sParameter & "%' " _
        & "ORDER BY tbl_Artikelen.artikelnaam"
        '// De systeem dsn, deze moet u aanpassen aan uw database.
        sDSN = "dsn=dsnnaam;uid=inlognaam;pwd=wachtwoord;"
        '// Recordset inlezen, de functie geeft het aantal gevonden records als
        '// resultaat of udERROR (het getal -2) wanneer er een fout is opgetreden.
        lRecordCount = GetRecordset(objRS, sQuery, sDSN)
    End If
'--------------------------------------------------------------------------------------------------
'---------- Einde Hoofdprocedure / Begin HTML generatie --------->
'--------------------------------------------------------------------------------------------------
%>
<html>
<head>
    <title>Practical Active Server Pages : database uitlezen, disconnected recordset</title>
    <meta name="Description" content="Voorbeeld voor het uitlezen van een database met
    gebruikmaking van een disconnected recordset.">
    <!-- Practical ASP wordt u aangeboden door Nedcomp Hosting -->
</head>
<body bgcolor="#FFFFFF">
<%
Select Case lRecordCount
 '// Wanneer er een fout is opgetreden een nette melding voor de bezoeker weergeven.
 Case udERROR %>
      <p align=center><font face="Arial, Helvetica" size="2">
      Wegens onderhoudswerkzaamheden is dit deel van de website momenteel niet toegankelijk.</font></p>
<%
 '// Wanneer geen criteria opgegeven....
 Case udNOCRITERIA %>
      <p align=center><font face="Arial, Helvetica" size="2">
      Er is nog geen selectie criteria opgegeven.</font></p>
<%
 '// Wanneer geen records / geen artikelen gevonden....
 Case 0 %>
    <p align="center"><font face="Arial, Helvetica" size="2">
    Er zijn geen artikelen gevonden die voldoen aan de opgegeven criteria.</font></p>
<%
  '// Wanneer we artikelen in de recordset hebben deze weergeven in een html-tabel.
  Case Else %>
    <div align="center"><center>
    <table border="0" cellpadding="1">
    <tr><td colspan="5"><hr width="100%" size="1" color="#669966"></td></tr>
    <% '// In een loop alle gegevens opnemen in onderstaande html.
    Do Until objRS.EOF %>
        <tr>
          <td><font face="Arial, Helvetica" size="2">recordnr <%= NotNull(objRS("artikelid")) %></font></td>
          <td>&nbsp;</td>
          <td><font face="Arial, Helvetica" size="2"><b><%= objRS("artikelnaam") %></b></font></td>
          <td>&nbsp;</td>
          <td align="right"><font face="Arial, Helvetica" size="2">
                    <%= FormatCurrency(NotNull(objRS("artikelprijs"))) %></font></td>
        </tr>
        <tr><td colspan="5"><hr width="100%" size="1" color="#669966"></td></tr>
    <%
        '// Volgend record.
        objRS.MoveNext
    Loop %>
    </table>
    </center></div>
<% End Select
   '// De disconnected recordset hebben we niet meer nodig, deze opruimen.
   Set objRS = Nothing
%>
    <p align=center><font face="Arial, Helvetica" size="2">
    Voer een deel van de naam van het artikel dat u zoekt in<br>
    onderstaand veld in (tip: <b>goud</b> of <b>pond</b> of <b>bmw</b>).</font></p>
    <!-- Zoekformulier voor het invoeren van de artikelnaam. -->
    <div align="center"><center>
    <form action="<%= Request.ServerVariables("SCRIPT_NAME") %>" method="POST">
        <input type="text" name="artikelnaam" size="10">
        <input type="submit" value="zoeken">
    </form>
    </center></div>
    <p align=center><font face="Arial, Helvetica" size="2">
    (tip: gebruik de letter <b>i</b> voor alle records (3 stuks)).</font></p>
</body>
</html>

 

 
Whois
 

Algemeen
telefoon en adres

 


FAQ's
E-mail FAQ
Domeinen FAQ
Webserver FAQ