http://www.vessella.it KARIBU!
Appunti di programmazione

INDICE

ITALIANO
Copertina
Il topo e il mouse
L'esperanto
Vocabolario esperanto
Vocabolario swahili
Il swahili
Alcuni filmati sulla Tanzania

Scuola
Questionari in inglese

Programmazione
Archivi Access e FrontPage
Gestione Archivi con le funzioni di FrontPage
Proteggere un sito in ASP (I)
Proteggere un sito in ASP (II)
Contatore e Statistiche
Utilizzare CDONTS (provvisorio)
Le date in ASP e SQL
Connessione a un archivio Access
Configurazione di una rete (PDF)
Criteri di protezione (PDF)
Esperanta Klavaro en EeePC kun originala Xandros

ESPERANTO
Koverto
Vortaro itala
Vortaro suahila
La suahila lingvo
Videokasedoj pri Tanzanujo

KISWAHILI
Jalida
Kamusi ya kiesperanto
Lugha ya Kiesperanto
Azimio la Praha
Video juu ya Tanzania

ENGLISH
Home
The Esperanto language
The Swahili language
Some videos on Tanzania

Gestione archivi .mdb con le funzioni di FrontPage

di Nino Vessella

2000 05 10


In altri appunti (Archivi Access e FrontPage) ho illustrato la procedura per creare una connessione protetta a un database facendo notare che FrontPage crea oltre alla cartella FPDB quattro file interessanti:

  1. Global.asa (se giá non c'era). In esso si trova una matrice con i dati necessari per il collegamento al database utilizzabili nelle proprie pagine ASP.
  2. fpdblib.inc
    con tutte le funzioni che normalmente servono per la gestione di un Database
  3. fpdbrgn1.inc - fpdbrgn2.inc
    con le istruzioni per aprire e visualizzare, con un ciclo, tutte le schede di un database

I file con estensione .inc si trovano nella cartella _fpclass (se non si vede: dal menu "Strumenti->Impostazioni Web->Avanzate->Scegliere l'opzione Mostra i documenti nelle cartelle nascoste->Rispondere sempre OK)

E' ovvio che le funzioni presenti in questi file possono essere utilizzate in tutte le pagine ASP scritte per la gestione dei database (in qualsiasi modo siano stati inseriti nel sito): basta inserirli nelle pagine con <!-- #include file= --> (oppure <!-- #include virtual= -->, per un riferimento assoluto). E si evita cosí di reinventare la ruota!

L'uso di queste funzioni si puó capire in questo modo.

Dopo aver creato un collegamento a un database seguendo la procedura illustrata in precedenza,

  1. aprire una nuova pagina (File->Nuovo->Pagina), 
  2. quindi Inserisci->Database->Risultati
  3. dal primo dei cinque passaggi scegliere l'archivio da aprire da Utilizzare una connessione di database esistente
  4. e proseguire con gli altri quattro passaggi (le istruzioni sono abbastanza chiare)

Viene cosí creata una pagina che visualizza in una tabella il contenuto di un archivio dividendo il risultato in pagine. Se avete un po' di pazienza potete studiarvi i file summenzionati e scoprirete delle funzioni che vi risparmieranno tempo!

Qui di seguito vi propongo un esempio di utilizzo brutale di alcune di queste funzioni. Non utilizzo le funzioni per la "paginazione", quindi se provate a usare questo codice otterrete tutti i record nella stessa pagina!

<!-- #include file="_fpclass/fpdblib.inc" -->

<html><head>
<title>
Utilizzo delle funzioni di FrontPage per la gestione di archivi</title>
</head>
<body>

<!--
' La tabella Anagrafico contenuta nell'archivio Clienti ha la seguente struttura:
' ID contatore/codice del cliente
' Nome testo
' Cognome testo
' Indirizzo testo
-->

<table width="100%" border="1">
<thead>
 <tr>
  <td><b>ID</b></td>
  <td><b>Nome</b></td>
  <td><b>Cognome</b></td>
  <td><b>Indirizzo</b></td>
 </tr>
</thead>
<tbody>

<%
' Stringa SQL
fp_sQry="SELECT * FROM Anagrafico"

' Se la stringa puó essere scritta tramite form dal visitatore
' la variabile seguente deve avere il valore True
fp_fCustomQuery=False

fp_sDataConn="Clienti"

' Connessione
set fp_conn = Server.CreateObject("ADODB.Connection")

' Nel file global.asa FrontPage ha assegnato a delle variabili Application
' tutti i dati relativi ai vari archivi.
' In questo esempio, le variabili hanno il prefisso (fp_sDataConn) "clienti"
' Ovviamente questi valori possono essere modificati manualmente.

fp_conn.ConnectionTimeout = Application(fp_sDataConn & "_ConnectionTimeout")

fp_conn.CommandTimeout = Application(fp_sDataConn & "_CommandTimeout")

fp_sConn = Application(fp_sDataConn & "_ConnectionString")

fp_sUid = Application(fp_sDataConn & "_RuntimeUserName")

fp_sPwd = Application(fp_sDataConn & "_RuntimePassword")

' La funzione FP_OpenConnection, per l'attivazione della connessione, si trova in
' _fpclass/fpdblib.inc

FP_OpenConnection fp_conn, fp_sConn, fp_sUid, fp_sPwd, Not(fp_fCustomQuery)

set fp_cmd = Server.CreateObject("ADODB.Command")

fp_cmd.CommandText = fp_sQry

fp_cmd.CommandType = 1 'fp_iCommandType

set fp_cmd.ActiveConnection = fp_conn

set fp_rs = Server.CreateObject("ADODB.Recordset")

set fp_rs.Source = fp_cmd

' Anche le seguenti funzioni si trovano in _fpclass/fpdblib.inc

FP_SetCursorProperties(fp_rs)

FP_OpenRecordset(fp_rs)

Do

 if fp_rs.EOF then exit do

 ' I valori dei vari campi vengono letti tramite la funzione
 ' FP_FieldVal, che usa server.HTMLEncode per visualizzarli

%>

<tr>
 <td><%=FP_FieldVal(fp_rs,"ID")%></td>
 <td><%=FP_FieldVal(fp_rs,"Nome")%></td>
 <td><%=FP_FieldVal(fp_rs,"Cognome")%></td>
 <td><%=FP_FieldVal(fp_rs,"Indirizzo")%></td>

</tr>

<%

 fp_rs.MoveNext

Loop

' Anche FP_Cloce fa parte della libreria fpdblib.inc

if IsObject(fp_rs) then

 FP_Close(fp_rs)

 FP_Close(fp_conn)

end if

set fp_rs = Nothing

set fp_cmd = Nothing

set fp_conn = Nothing

%>

</tbody>
</table>
</body>
</html>

 


Bibliografia:
Using Databases with MS FrontPage 2000
Files and folders that FrontPage creates for your web
Inside Office 2000 / Working with Access data in FrontPage
Configuring Support for Database Integration with FrontPage

Special FrontPage Directories and Storage Locations

Numero di lettori:  

 


© Nino Vessella , 1996-.
Diritti riservati. Nessuna parte può essere riprodotta, in qualsiasi forma o mezzo, senza citare la fonte.
Ĉiuj rajtoj rezervitaj. Neniu parto povas esti reproduktita, en kiu ajn formo au per kiu ajn metodo, sen mencii ĉi tiun fonton.
Haki zote zimehifadhiwa. Hairuhusiwi kunakili sehemu yoyote bila kuitaja asili yake hii.
All rights reserved. No part may be reproduced, in any form or by any means, without mention of this source.