utentionline
searchengine
quicklinks
Web Directory
WebDesigner
Web Development
Template & Layout
Non solo Web :: Blog
Portfolio Lavori
Who is Yappy?
Benvenuto nella Newsletter
libririviste
Calendario motoGP 2007
newscorsi
FAQ & Domande
WebDesigner
Tutorials Flash Mx
Tutorials ASP
Tutorials XHTML
Tutorials Javascript
Tutorials HTML-CSS
Tutorials SQL
Tutorials PHP & MySQL
AJAX applicazioni web
Web MarketingTutorials ASP
Tutorials XHTML
Tutorials Javascript
Tutorials HTML-CSS
Tutorials SQL
Tutorials PHP & MySQL
AJAX applicazioni web
Web Development
Template & Layout
Non solo Web :: Blog
Portfolio Lavori
Who is Yappy?
Benvenuto nella Newsletter
libririviste
Calendario motoGP 2007
newscorsi
FAQ & Domande
newscorsi
Web Designer gratuitoCorso Web Designer Gratuito per creare siti internet trucchi, consigli, esempi pratici e template per diventare un vero web designer.
Seo Extreme 2007
Al corso nazionale "Seo Extreme 2007" troverai le ultime tecniche e strategie di Posizionamento nei motori di ricerca. Parteciperai ad un corso di alto livello dedicato a chi vuole fare posizionamento...
libririviste
Web Design Facile"Web Design Facile" di Davide Vasta è una guida pratica che conduce il lettore, passo per passo attraverso la realizzazione di un sito Internet: dalla creazione di un prototipo da mostrare al cliente fino al suo sviluppo definitivo.
WebDesigner 22
Web Designer Magazine n.22. Flash in prima linea, conoscere l'ultima versione del programma Macromedia. Inserire video Flash nelle vostre pagine. In primo piano "diventare Designer di successo".
Web Marketing
Trucchi headlines efficaci 8Trucchi headlines efficaci 7
tagclouds
Posizionamento nei Motori Strategie per un forum il Bignami del Web Battaglia Navale Tutorial online Creazione di un Layout con tab Apartments in Florence Guida XHTML 1.0 Web Designer 18 ActionScript - Scrolling testo webdesigner 17 Banner randomsyndicate
RSS 2.0Atom feed
CreativeCommons
Un Forum in ASP [fase I]
[28 Apr 2004]Più di un forum abbiamo a che fare con un guestbook da utilizzare per raccogliere opinioni ed idee di chi entra nel vostro sito. Questa parte del tutorial si occupa di leggere il database.
Più che forum, si tratta di un guestbook da utilizzare per raccogliere opinioni ed idee di chi entra nel vostro sito.
Gli elementi che andremo ad implementare in questo progetto sono:
1) un database guestbook.mdb;
2) una pagina default.asp necessaria a visualizzare i messaggi;
Iniziamo proprio dalle caratteristiche del database guestbook.mdb in cui sono stati definiti i campi:
| Campo | Descrizione | Note |
| id | contatore | Chiave primaria del database |
| data | testo | contiene la data in cui viene postato il messaggio |
| mittente | testo | il nome dell'utente che ha postato il messaggio |
| testo | eventuale email del mittente (può rimanere vuoto) | |
| sito | testo | eventuale sito del mittente (può rimanere vuoto) |
| messaggio | memo | contiene il messaggio dell'utente |
| pubblica | testo | il valore iniziale è "no", il messaggio verrà? pubblicato in un secondo tempo dopo la lettura da parte dell'amministratore |
Iniziamo quindi con inserire un primo messaggio direttamente attraverso il database, ad esempio:
| :: yappy :: 26.05.2003 |
Il tutorial relativo alla pubblicità? Flash è stato molto interessante. A quando una nuova lezione per esempio sui menu scorrevoli (comandati dal mouse)? |
La cartella è un collegamento al sito inserito all'utente, mentre la busta è dedicata alla posta elettronica. Se questi due campi non sono inseriti dall'utente rimarranno vuoti.
Ovviamente visto che ora siamo stati noi ad inserire il messaggio il campo pubblica è impostato a "si".
Il passo successivo è creare la pagina "default.asp" necessaria a visualizzare i messaggi il cui campo pubblica contiente "si".
Attenzione: a meno di casi particolari si consiglia salvare il database nel formato Access'97 la dimensione iniziale del file è di circa 80KB contro i 160KB di una database in Access 2000.
Guestbook :: Yappy.Web
Copyright 2003 :: YappY Web
La pagina è associata ad un file stile.css a cui vengano demandate tutte le caratteristiche di stile. Ogni volta che abbiamo a che fare con una pagina ASP, risulta evidente la necessità? di mescolare codice HTML tradizionale a elementi ASP elaborati lato server.
Creare documenti tipo in HTML il più snelli possibile permette di lavorare meglio con il codice ASP, se poi la grafica o il colore devono essere modificati possiamo modificare il file stile.css senza preoccuparci del codice.
Copiate il codice css descritto di seguito e salvatelo nella stessa certella del databese e della pagina default.asp.
body, div, td{ margin: 0px; color: #990000; font: 8pt Verdana, Geneva, Arial, Helvetica, sans-serif }
input,pre {color: #990000; font: 8pt Verdana, Geneva, Arial, Helvetica, sans-serif }
a { color: #990000; background: transparent }
a:hover { color: #0068cc; background: transparent }
#principale { border: #660000 1px dotted; margin-left: 25%; width: 400px; padding: 4px}
#contenuto { padding: 4px; border-top: #666 1px dotted; color: #333; background: transparent; }
#barra {text-align:center; padding: 2px; margin-top: 10px;
color: #ffffff; background: #990000}
#barra a { color: #ffffff; background: transparent; text-decoration: none; }
#barra a:hover {color: #ffffff; background: transparent; text-decoration: underline; }
.nome { padding: 4px; font: 8pt Verdana, Geneva, Arial, Helvetica, sans-serif;
border-bottom: #660000 1px dotted; text-align: center; }
.msg { padding: 8px; font: 8pt Verdana, Geneva, Arial, Helvetica, sans-serif;
border-bottom: #660000 1px dotted; border-left: #660000 1px dotted; }Ora che la struttura, pagina default.asp e stile stile.css sono pronte, procediamo con il codice ASP necessario a leggere il contenuto del database.
<%
dim DBfile, conn, DSNtemp, SQLstmt, rs
DBfile=server.MapPath("guestbook.mdb")
Set conn = Server.CreateObject("ADODB.Connection")
DSNtemp = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & DBfile
conn.Open DSNtemp
SQLstmt = "SELECT * FROM messaggi"
if utente<>"administrator" then
SQLstmt = SQLstmt &" WHERE pubblica='si'"
end if
SQLstmt = SQLstmt & " Order by id desc"
Set rs = Server.CreateObject("ADODB.Recordset")
rs.open SQLstmt, Conn, 3, 3
num=3
rs.PageSize = 1
rs.CacheSize = 1
n_record = rs.PageCount
totali=Cint(n_record/num+0.3)
%>
<% if utente="administrator" then %>
Log-out
<% end if %> :: Aggiungi Messaggio ::
Messaggi: <%=n_record%> :: Pagine: <%=totali%>
[1] - La stinga SQL SELECT * FROM messaggi WHERE pubblica="si" Order by id desc permette di aprire il database ed ordinato in ordine decrescente rispetto al campo "id" (è un contatore ed è una chiave primaria) lo scopo è mostrare l'ultimo messaggio ricevuto e poi tutti quelli successivi.
[2] - utilizziamo la funzione rs.PageCount per conoscere il numero totale dei record memorizzati nel database, dopo aver impostato ad "1" le variabili rs.PageSize e rs.CacheSize.
[3] - in funzione del numero di messaggi per pagina (num=3) calcoliamo il numero di pagine necessarie a visualizzarli tutti totali=Cint(n_record/num)+1.
Riportiamo queste informazioni all'interno della pagina
[a] - Il numero di messaggi contenuti nella tabella <%=n_record%>
[b] - Il numero di pagine totali <%=totali%>
[c] - Un collegamento al file messaggio.asp che permetterà? al visitatore di inserire un nuovo messaggio
<% if utente="administrator" then %> Log-out <% end if %> :: Aggiungi Messaggio :: Messaggi: <%=n_record%> :: Pagine: <%=totali%>
Ora che il database è aperto procediamo all'estrazione dei dati.
Procediamo al controllo ed all'estrazione dei dati in particolare se nel database non sono presenti dei messaggi (se totali=0) altrimenti partiamo con la visualizzazione del messaggio 1, 4, 7, 10 etc secondo l'algoritmo (page-1)*num+1 che permette di visualizzare 3 messaggi per ogni pagina.
Naturalmente la lettura del database viene terminata ogni volta che l'indice supera il numero tre o quando siamo arrivati al termine della tabella.
Nota bene: il codice descritto di seguito, sostituisce le righe:
<% if n_record=0 then response.write "Non ci sono Messaggi" else %>
| <%=rs("mittente")%> "> <%=rs("data")%> |
<% if utente="administrator" then %>
"> <% end if %> <%=rs("messaggio")%> |
Un elemento da risolvere ora è come passare da una pagina all'altra per visualizzare la serie di messaggi, questa operazione viene lasciata ad una serie di collegamenti mostrati dal seguente codice:
| <% if page>1 then %> indietro <% end if %> | Pagina <%=page%> di <%=totali%> |
<% if page |
Si realizza un collegamento alla pagina realizzata, comprensiva di un parametro "page" come mostrato di seguito default.asp?page=<%=page+1%>
Per catturare questo parametro ad inizio pagina al posto del commento mettiamo il codice che permette di leggere il parametro.
<%
if request("page") = "" then
page = 1
else
page = Cint(request("page"))
end if
utente=session("yappy.guestbook")
%>abbiamo completato la prima fase di creazione del database e di lettura del suo contenuto, L'operazione da fare successivamente è quella di creare il file messaggio.asp che permetterà? agli utenti del sito di inserire i propri messaggi e all'amministratore del guestbook di apportare eventuali modifiche ai messaggi (pubblica si/no). Visita il sito »



