Connessione al database con Visual Basic NET? Lo trovi su Opentraining.it Visual Basic Italia
PRINCIPALE > CORSO DI ASP

Eseguire una ricerca veloce nell' archivio delle risorse di Visual Basic Italia®: 

Preso dall'archivio...

Premere il pulsante sotto per accedere direttamente ad un articolo o ad un esempio preso in modo casuale dall'archivio.



Ultimo e-book pubblicato:

"INTRODUZIONE AI CSS"

Lo scopo del CSS language è quello di controllare lo stile dei vari elementi che concorrono a formare un
documento HTML.
Si può operare in tre modi collegamento ad un foglio di stile esterno;definizione degli stili all'inizio
del documento utilizzo della proprietà style all'interno di un Tag HTML (embedded style). Questo e-book introduttivo
servirà per apprendere tali nozioni fondametali dei fogli di stile.

Prezzo: € 0.0.
Presentazione:
REAL SOFTWARE RILASCIA LA VERSIONE 5.0 di REALbasic per Windows






Gorizia, 5 maggio 2003 - Active, distributore in esclusiva di REALSoftware, Austin, Tx, annuncia la disponibilità di REALbasic 5.0 per Windows, uno strumento per lo sviluppo semplice da usare che permette agli utenti Windows di tutti i livelli di creare applicazioni personalizzate e di compilarle sia per la piattaforma Windows che per quella Macintosh.
[>>]

http://www.active-software.com

 

Contatti. Utilizzare l'email generica per domande relative al sito:
Porre domande relative al sito
oppure scrivere ad un responsabile di area.
Responsabile del sito: >Andrea Martelli
Responsabile area "Corso di VB":
> Giorgio Abraini

Corso di ASP: lezione 7 - a cura di Paolo Malesci

Questa lezione, consultata da 6191 utenti, è stata giudicata di ottimi contenuti , con un'esposizione perfettamente comprensibile e con un livello di approfondimento ottimo da 49 votanti.


ASP: un esempio pratico

Siamo una piccola associazione o qualcosa di simile ed abbiamo un sito web costituito da una parte a disposizione di tutti ed una parte a disposizione solo degli utenti registrati; quasti ultimi non saranno molti per cui possiamo adoperare un normale file txt per memorizzarli.
Questo sistema in pratica non lo adotteremo mai per motivi di sicurezza (i dati degli utenti non sono al sicuro), ma visto che non abbiamo ancora nozioni di database accontentiamoci.


Come prima cosa abbiamo deciso di non usare i frame, così la cosa sarà più complicata.
Nella pagina iniziale index.asp testeremo innanzitutto se nell'utente connesso è presente il Cookie di registrazione; se è presente controlleremo che user e password siano presenti nel file utenti.txt ed in caso affermativo evidenzieremo una frase di saluto; se manca il cookie o i dati non sono validi visualizzeremo sia un riquadro di login, sia un link per la registrazione alla pagina registra.asp.
Dal form di login passeremo i dati a login.asp che effettuerà i controlli e ci restituirà l'esito.
Per gestire il ritorno dei dati alla nostra pagina da login.asp e da registrazione.asp utilizzeremo la command line, passando il tipo (login|newuser) e l'user-id.
Il modo migliore per gestire le cose nel corso di index.asp è di usare una variabile Registrato posta inizialmente a 0 e metterla ad 1 quando verifichiamo che l'utente è registrato; se poi vogliamo distinguere se ha il cookie o ha fatto il login o se è un nuovo utente usiamo anche il 2 ed il 3.
Per prima cosa costruiamo una normale pagina HTML, così possiamo studiare facilmente l'aspetto grafico e sistemarla finché non siamo soddisfatti del risultato; poi aggiungeremo il codice script necessario e la rinomineremo index.asp.
La pagina HTML che abbiamo costruito è Esempio1.html


ed il codice è il seguente:

<html>
<head>
<title>IL PORTALE ITALIANO DEGLI AMANTI DELLA RICOTTA</title>
<style type="text/css">
div.Saluto { font-size: 120%;
font-weight: bold; color: red;
z-order: 0;}
div.Login { background: rgb(255,153,0);
border: solid; border-width: thin;
border-color: black; padding: 0.5em;
z-order: 1;}
</style>
</head>
<body background="sfondo1.gif" leftmargin=0 topmargin=0>
<img src="logo763.jpg" border=0>

<div class="Saluto" style="position:absolute; top:80px; left:30px;">
bentornato Giuseppe !
</div>

<div class="Login" style="position:absolute; top:64px; left:0px; width=25%;">
<form name="Form1" id="Form1" method="POST" action="login.asp">
<table width=100% style="font-size:x-small;">
<tr>
<td width="30%">Nome:</td>
<td width="50%"><input type="text" name="Utente" size="16"></td>
<td width="*"> </td>
</tr>
<tr>
<td>Password:</td>
<td><input type="password" name="Passwd" size="8"></td>
<td> </td>
</tr>
<tr height="5">
<td colspan="3"></td>
</tr>
<tr>
<td colspan="3" align="center">
<input type="submit" value="logon" name="B1"></td> </tr>
</table>
</form>
<b>sei nuovo? <a href="registra.asp">registrati !<a></b>
</div>

<div style="position:absolute; top:240px; left:40px;">
<a href="ricotta1.asp"><img src="bottone1.gif" border=0></a>
</div>

<div style="position:absolute; top:350px; left:100px;">
<a href="ricotta2.asp"><img src="bottone2.gif" border=0></a>
</div>

<div style="position:absolute; top:440px; left:220px;">
<a href="ricotta3.asp"><img src="bottone3.gif" border=0></a>
</div>

<div style="position:absolute; top:440px; left:600px;">
<a href=""ricette.asp"><img src="bottone4.gif" border=0></a>
</div>
<div style="position:absolute; top:500px; left:410px;">
<a href="forum763.asp"><img src="bottone5.gif" border=0></a>
</div>

</body>
</html>

Cominciamo adesso ad inserire gli script; in cima ad index.asp mettiamo:

<%
Dim sCommand
Dim Registrato
Dim UserW
Dim NewComm
Registrato = 0
UserW = ""

sCommand = UCase(Trim(Request.QueryString("cmd")))
NewComm = sCommand
Select Case sCommand
Case "LOGCOOK"
Registrato = 1
UserW = Trim(Request.QueryString("user"))
Case "LOGIN"
Registrato = 2
UserW = Trim(Request.QueryString("user"))
Case "NEWUSER"
Registrato = 3
UserW = Trim(Request.QueryString("user"))
Case Else
If Len(Request.Cookie("Club763")("user")) > 0
Registrato = 1
UserW = Trim(Request.Cookie("Club763")("user"))
NewComm = "LOGCOOK"
End If
End Select
If Registrato > 0 Then
NewComm = "?cmd=" & NewComm & "&user=" & UserW
End If
%>

In questo modo abbiamo per prima cosa controllato se erano stati passati dei parametri (come faremo quando chiameremo index.asp dalle altre pagine), poi guardato se l'utente aveva il nostro cookie; alla fine abbiamo costruito la stringa da aggiungere all'URL per gli utenti registrati.
Non abbiamo controllato se i dati del cookie erano nel nostro archivio, ma potremo aggiungerlo in un secondo momento visto che dovremo fare delle ricerche di quel tipo in login.asp e potremo copiare da lì il codice necessario.
Cominciamo adesso a gestire la presentazione della pagina.
Per prima cosa dobbiamo nascondere il riquadro di login e registrazione se l'utente è già registrato; lo faremo aggiungendo nella parte <style> a div.Login l'attributo visibility: hidden;

............
border-color: black; padding: 0.5em;
<%
If Registrato > 0 Then
Response.Write "visibility: hidden;" & VbCrLf
End If
%>
z-order: 1;}

Andiamo adesso alla div Saluto e sostituiamo la riga bentornato Giuseppe ! con il seguente script:

<%
If Registrato > 0 Then
If Registrato = 3 Then
Response.Write "benvenuto " & UserW & " !"
Else
Response.Write "bentornato " & UserW & " !"
End If
End If
%>

Dobbiamo adesso modificare i primi 3 link; all'URL di href infatti dobbiamo aggiungere la command line che abbiamo preparato in NewComm, in quanto quelle pagine quando tornerano indietro dovranno utilizzarla per passarci gli eventuali parametri.
Sostituiamo <a href="ricotta1.asp"> con lo script:

<% Response.Write "<a href=" & Chr(34) & "ricotta1.asp" & NewComm & Chr(34) & ">" %>

ed analogamente facciamo per ricotta2 e ricotta3.
Gli ultimi due link sono invece riservati agli utenti registrati; pertanto dovremo scrivere tutta la parte che li riguarda tramite Response.Write:

<%
If Registrato > 0 Then
Response.Write "<div style=" & Chr(34) & "position:absolute; top:440px; left:600px;" & Chr(34) & ">" & VbCrLf
Response.Write "<a href=" & Chr(34) & "ricette.asp" & NewComm & Chr(34) & ">"
Response.Write "<img src=" & Chr(34) & "bottone4.gif" & Chr(34) & " border=0></a>" & VbCrLf
Response.Write "</div>" & VbCrLf
Response.Write "<div style=" & Chr(34) & "position:absolute; top:500px; left:410px;" & Chr(34) & ">" & VbCrLf
Response.Write "<a href=" & Chr(34) & "forum763.asp" & NewComm & Chr(34) & ">"
Response.Write "<img src=" & Chr(34) & "bottone5.gif" & Chr(34) & " border=0></a>" & VbCrLf
Response.Write "</div>" & VbCrLf
End If
%>

La nostra pagina è finalmente terminata; possiamo goderci un meritato riposo prima di affrontare la costruzione delle altre pagine.
Il metodo che abbbiamo utilizzato per passarci i parametri tra le pagine è abbastanza macchinoso e noioso da codificare e potevamo evitarlo con l'utilizzo dell'oggetto Session (che non abbiamo ancora esaminato) in quanto le variabili che ci interessavano erano variabili da utilizzare e mantenere per una sessione (ovvero per un collegamento di un utente); tuttavia questo esercizio non è stato inutile in quanto vi saranno occasioni in cui dovremo utilizzare per forza la QueryString in quanto i parametri saranno tipici dell'operazione e non della sessione, come ad esempio in una pagina di gestione di un database.
Con le altre pagine, che vedremo nella prossima lezione, impareremo a ricevere i dati passati da un Form, a scrivere Cookie sul PC dell'utente ed a utilizzare i file di testo.
Di quest'ultimo argomento vedremo anche un interessante esempio su come sia possibile utilizzare una pagina html esistente in una pagina asp e le possibilità che ci offre questa soluzione.


Si ringrazia per l'articolo Paolo Malesci