Ciao a tutti,
premetto di aver cercato tutti i post precedenti dove ho trovato già informazioni utili, però vorrei un aiuto da voi per questo problema.
Non essendo un programmatore "puro" utilizzo Dreamweaver per la scrittura del codice.
Ho creato un database ACCESS con una tabella:
Campi - ID (contatore), User, Password, Mail e una serie di altri dati personali
Ho creato il modulo di iscrizione che scrive nella tabella, aggiungendo i nuovi utenti.
Ora vorrei creare una pagina personale differenziata per ogni singolo utente, dove compaiano le sue informazioni personali.
Ho creato nella home page le caselle User e password che puntano a PaginaPersonale.asp nel caso di login corretto.
Questo è il codice della Home page. Come suggerito in un altro post, ho aggiunto la riga evidenziata per portarmi dietro (in PaginaPersonale.asp) lo User dell'utente.
<%@LANGUAGE="VBSCRIPT"%>
<%
' *** Validate request to log in to this site.
MM_LoginAction = Request.ServerVariables("URL")
If Request.QueryString<>"" Then MM_LoginAction = MM_LoginAction + "?" + Request.QueryString
MM_valUsername=CStr(Request.Form("User"))
If MM_valUsername <> "" Then
MM_fldUserAuthorization=""
MM_redirectLoginSuccess="PaginaPersonale.asp"
MM_redirectLoginFailed="UtenteErrato.htm"
MM_flag="ADODB.Recordset"
set MM_rsUser = Server.CreateObject(MM_flag)
MM_rsUser.ActiveConnection = MM_TradingGame_STRING
MM_rsUser.Source = "SELECT User, Password"
Session("MM_Username") = MM_valUsername
If MM_fldUserAuthorization <> "" Then MM_rsUser.Source = MM_rsUser.Source & "," & MM_fldUserAuthorization
MM_rsUser.Source = MM_rsUser.Source & " FROM Utenti WHERE User='" & Replace(MM_valUsername,"'","''") &"' AND Password='" & Replace(Request.Form("Password"),"'","''") & "'"
MM_rsUser.CursorType = 0
MM_rsUser.CursorLocation = 2
MM_rsUser.LockType = 3
MM_rsUser.Open
If Not MM_rsUser.EOF Or Not MM_rsUser.BOF Then
' username and password match - this is a valid user
Session("MM_Username") = MM_valUsername
If (MM_fldUserAuthorization <> "") Then
Session("MM_UserAuthorization") = CStr(MM_rsUser.Fields.Item(MM_fldUserAuthorization ).Value)
Else
Session("MM_UserAuthorization") = ""
End If
if CStr(Request.QueryString("accessdenied")) <> "" And false Then
MM_redirectLoginSuccess = Request.QueryString("accessdenied")
End If
MM_rsUser.Close
Response.Redirect(MM_redirectLoginSuccess)
End If
MM_rsUser.Close
Response.Redirect(MM_redirectLoginFailed)
End If
Per riprendere lo User in PaginaPersonale.asp ho inserito il comando
User = Session("MM_Username")
In questo modo, ad esempio, sono riuscito a scrivere il seguente messaggio di benvenuto
<table width="99%" border="1">
<tr>
<td>
<div align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Benvenuto</font></div></td>
</tr>
<tr>
<td>
<div align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><%= User %>!</font></div></td>
</tr>
</table>
Nel caso dell'Utente Pippo esce scritto Benvenuto Pippo!
I quesiti che vi pongo sono questi:
1- Come faccio ad interrogare il database per avere tutte le informazioni legate all'utente?
Se ad esempio volessi far comparire scritti in una parte della pagina web la sua email, il nome e il cognome o altre informazioni registrate nel DB in tabelle collegate? Devo usare delle query?
2- A partire dalla pagina personale vorrei collegarne altre dove l'utente fa delle scelte (ad esempio in menù a tendina o in campi di testo) che poi vengono memorizzate in altre tabelle del database, collegate alla tabella UTENTI tramite il campo ID.
Secondo voi la scelta di trasportare lo Username da una pagina all'altra è valida o c'è qualche altro metodo migliore? Ad esempio ho sentito parlare di Variabili di sessione, ma non so bene come funzionino.
Spero di essere stato preciso ed esauriente nel presentare la questione e nel porre le domande.
Grazie a tutti quelli che vorranno aiutarmi!![]()

Rispondi quotando
Carissimo ANDARCO...