Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    6

    Pagina personale (area riservata) utente

    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!

  2. #2
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    6
    Please! :rollo:

  3. #3
    1) devi usare delle query

    2) leggiti la guida di base all'asp

    2b) non so se ci siano estensioni di dreamweaver per fare quello che chiedi.
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  4. #4
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    6
    Grazie Santino,
    sto in effetti leggendo la guida base di asp proposta qui sul sito.

    Per quanto riguarda le query, come posso dire di utilizzare la variabile User portata in PaginaPersonale.asp attraverso il comando Session per accedere agli altri campi della tabella nel DB?

    Grazie!

  5. #5
    Originariamente inviato da andarco
    Grazie Santino,
    sto in effetti leggendo la guida base di asp proposta qui sul sito.

    Per quanto riguarda le query, come posso dire di utilizzare la variabile User portata in PaginaPersonale.asp attraverso il comando Session per accedere agli altri campi della tabella nel DB?

    Grazie!
    facendolo semplice, mettiamo che tu hai una Session, di nome User ( Session("User")) dove salvi l'username:

    codice:
    Session("User") = user_name 'dopo che ha effettuato il login
    una volta che sta nelle pagine protette per ricavartelo:

    codice:
    user_name = Session("User")
    a quel punto una query può essere:

    codice:
    SELECT * FROM USERS WHERE USERNAME  = '" & user_name & "'"
    però questa è una cosa molto semplicistica e dipende da quello che devi fare. Anche gestire la login dipende molto da quello che devi fare. Insomma hai un pò da lavorarci sopra e a leggerti piu materiale possibile, magari in inglese che in genere si trova molta roba
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  6. #6
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    6
    Va bene, grazie per la dritta.
    Mi sto impegnando molto, soprattutto nel cercare e leggere articoli sull'argomento e a poco a poco faccio qualche passo in avanti...

    Nel caso avessi bisogno mi rifarò vivo presto!

    Per ora grazie mille!

  7. #7
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    6
    Una domanda ancora:

    Nella home faccio il login e apro la session

    Session("MM_Username") = MM_valUsername

    Nella pagina successiva (PaginaPersonale.asp) recupero la session

    User = Session("MM_Username")

    Ma se in pagina personale.asp creo un link ad una terza pagina, dove ho ancora bisogno di portarmi dietro lo username, cosa devo fare?
    Devo rifare lo stesso procedimento?

    Grazie

  8. #8
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    La session è attiva finché non scade quindi in ogni pagina riservata devi solo recuperarne il valore ovvero:

    User = Session("MM_Username")

    Roby

  9. #9
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    6
    Ora funziona, perfetto!
    Adesso devo capire come effettuare dei calcoli in una tabella (se si può farlo nel database o in asp), ma credo se ne sia parlato in qualche post precedente, quindi cerco nel sito.

    Per ora grazie davvero, mi avete dato una grossa mano!

  10. #10

    HELP

    Carissimo ANDARCO...
    questa cosa che hai fatto te nel tuo sito la stò cercando da una vita intera...

    ahahhah

    vi supplico de riuscirmi a spiegare passo passo come hai fatto!

    GRAZIEEEEEEEEE

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.