Lezione 19: Combo Box e Ricerca

Una funzione molto utilizzata delle Active Server Pages è l'abilità di creare, cancellare, recuperare e aggiornare informazioni all'interno dei databse. In questo corso utilizzeremo database di tipo Microsoft Access come sorgente di dati, perciò sarà importante che comprendiate alcuni fondamenti sui database.

Fausto Marinsalta

 

Visualizzare una lista di record

Come sappiamo dalla Lezione 18, è possibile creare tabelle che contengono hyperlink a un record che vogliamo visualizzare. E' possibile eseguire questa operazione anche creando una Combo Box che riempiamo dinamicamente. Invece di passare dati tramite la querystring, come nella Lezione 18, ora passeremo i dati come un elemento della form.

Listato 11.1 - Form di Ricerca con Combo Box

<!--#include virtual="/includes/adovbs.inc"-->

<!--#include virtual="/includes/subConn.inc"-->

<html>

<head>

<title>Selezione Studente</title>

</head>

 

<body>

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

<table border="1">

<tr>

    <td>Nome Studente:</td>

    <td>

    <%

    sql = "SELECT * " & _

          "FROM Studenti " & _

          "ORDER BY COGNOME"

    openCN

    rs.Open sql, cn

 

    Response.Write "<select name=sid size=1>" & vbCrLf

    do while not rs.EOF

       Response.Write "<option value=" & _

                      rs("SID") &">" & _

                      rs("COGNOME") & "," & _

                      rs("NOME") & "</option>" & vbCrLf

       rs.MoveNext

    loop

    rs.Close

    closeCN

    Response.Write "</select>" & vbCrLf

    %>

   </td>

</tr>

<tr>

    <td colspan="2">

       <input type="submit" value="Submit">

    </td>

</tr>

</table>

</form>

</body>

</html>

 

Figura 11.1 – Output di esempio

Listato 11.2 - Form Record Studente

<!--#include virtual="/includes/subConn.inc"-->

<!--#include virtual="/includes/adovbs.inc"-->

<%

sid = Request.Form("sid")

sql = "SELECT * FROM Students WHERE SID='" & sid & "'"

 

openCN

rs.Open sql, cn

%>

<html>

 

<head>

<title>Informazioni Studente</title>

</head>

 

<body>

 

<form>

<table bgcolor="#C0C0C0">

<tr>

    <td align="left">strong>Informazioni Studente</strong></td>

</tr>

<tr>

    <td align=right>

    <table border=0>

    <tr>

       <td align="right">ID Studente:</td>

       <td>

          <input type=text name=txtSID value= <%=rs("SID")%> >

       </td>

    </tr>

    <tr>

       <td align="right">Nome:</td>

       <td>

          <input type=text name=txtFName value= <%=rs("NOME")%> >

       </td>

    </tr>

    <tr>

       <td align="right">Cognome:</td>

       <td>

          <input type=text name=txtLName value= <%=rs("COGNOME")%> >

       </td>

    </tr>

    <tr>

       <td align="right">Indirizzo:</td>

       <td>

          <input type=text name=txtAddress value= <%=rs("INDIRIZZO")%> >

       </td>

    </tr>

    <tr>

       <td align="right">Città:</td>

       <td>

          <input type=text name=txtCity value= <%=rs("CITTà")%> >

       </td>

    </tr>

    <tr>

       <td align="right">Stato:</td>

       <td>

          <input type=text name=txtST value= <%=rs("STATO")%> >

       </td>

    </tr>

    <tr>

       <td align="right">CAP:</td>

       <td>

          <input type=text name=txtZipcode value= <%=rs("CAP")%> >

       </td>

    </tr>

    </table>

    </td>

</tr>

<tr>

    <td align="center">

       <input type="reset" value="Clear">

       <input type="submit" value="Submit">

    </td>

</tr>

</table>

</center></div>

</form>

</body>

</html>

Applicate ciò che avete appreso

Usando la form di ricerca creata in questa lezione e quella delle valutazioni che avete creato nella lezione precedente, modificate la form delle valutazioni in modo da visualizzare i nomi completi degli studenti, e tutti i punteggi dei loro esami, basandosi sul nome studente passato dalla form di ricerca.