Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1
    Utente di HTML.it L'avatar di Gamma
    Registrato dal
    Sep 2002
    Messaggi
    145

    [vb.net] Aiuto su user control

    Ciao a tutti!
    Sono nuovo di ASP.NET e perciò vi prego di avere pazienza...
    Vi espongo la questione : ho una pagina principale che contiene un user control col quale faccio il classico log in con user e pwd, mi connetto al db e controllo l'esistenza del record.
    Fin qui tutto OK.
    Ecco il problema :
    vorrei che una volta verificata l'esistenza del record non venisse + visualizzato il form ma un messaggio qualsiasi tipo "Utente riconosciuto" o qualcosa del genere...

    vi posto il codice dell'user control, così spero possiate darmi una mano:

    <%@ Control language="VB"%>
    <%@ Import NameSpace="System.Data"%>
    <%@ Import NameSpace="System.Data.Odbc"%>
    <script language="VB" runat="server">
    Sub Login(sender As Object, e As System.EventArgs)
    Dim myConn = New OdbcConnection ()
    myConn.connectionstring = ConfigurationSettings.AppSettings("ConnectionStrin g")
    'try
    myConn.Open()
    Dim sqlString = "SELECT * FROM utenti WHERE user_password ='" & user.Text & "' AND user_user ='" & pwd.Text & "'"
    Dim myCom As New OdbcCommand(sqlString, myConn)
    Dim myReader As OdbcDataReader
    myReader = myCom.ExecuteReader()
    If Not myReader.Read() Then
    user.text = ""
    pwd.text = ""
    testo_msg.text = "Attenzione !!
    Login fallito..."
    Session("user") = "Guest"
    Else
    testo_msg.text = "Benvenuto " & myReader("user_nome") & " " & myReader("cli_cognome") & " (" & myReader("user_codice") & ")"
    Session("user") = myReader("user_id")
    End If
    myReader.Close()
    myConn.Close()
    'end try
    End Sub
    </script>

    <form name="login" runat="server">
    <tr>
    <td>
    <table cellspacing="0" cellpadding="2" width="100%" bgcolor="#e0e0e0" border="0">
    <tr>
    <td class="titolo_menu" valign="center" align="left" bgcolor="#efefef" height="25" colspan="2">
    :: Login
    </td>
    </tr>
    <tr>
    <td bgcolor="#efefef" colspan="2">
    <asp:Label ID="testo_msg" runat="server" />
    </td>
    </tr>
    <tr>
    <td valign="middle" align="left" bgcolor="#efefef" height="20">
    [*]User-ID
    </td>
    <td valign="middle" align="left" bgcolor="#efefef" height="20">
    <asp:TextBox class="log" id="user" style="width:100" TextMode="SingleLine" runat="server" />
    </td>
    </tr>
    <tr>
    <td valign="middle" align="left" bgcolor="#efefef" height="20">
    [*]Pwd-ID
    </td>
    <td valign="middle" align="left" bgcolor="#efefef" height="20">
    <asp:TextBox class="log" id="pwd" style="width:100" TextMode="password" runat="server" />
    </td>
    </tr>
    <tr>
    <td valign="top" align="right" bgcolor="#efefef" height="20" colspan="2">
    [*]
    <asp:LinkButton id="check_user" class="modulo" runat="server" OnClick="Login">Conferma
    &raquo;</asp:LinkButton>

    </td>
    </tr>
    <tr>
    <td height="1" bgcolor="#000000" colspan="2"></td>
    </tr>
    </table>
    </td>
    </tr>
    </form>

    Grazie!!!
    La VERTENZA é NULLA senza CONTRATTO

  2. #2
    Utente di HTML.it L'avatar di Gamma
    Registrato dal
    Sep 2002
    Messaggi
    145
    Nessuno mi può dare una 'dritta' ??
    La VERTENZA é NULLA senza CONTRATTO

  3. #3
    Utente di HTML.it L'avatar di Gamma
    Registrato dal
    Sep 2002
    Messaggi
    145
    Se non risolvo questo tipo di problema, credo che smetterò di studiare asp.net.
    Please...
    La VERTENZA é NULLA senza CONTRATTO

  4. #4
    Utente di HTML.it L'avatar di Gamma
    Registrato dal
    Sep 2002
    Messaggi
    145
    Vabbuono:
    ciao ciao asp.net!!!


    Perchè devo sfasciarmi la testa con una cosa che con asp NON .net si fa in 3(TRE) minuti???
    La VERTENZA é NULLA senza CONTRATTO

  5. #5
    Utente di HTML.it L'avatar di Gamma
    Registrato dal
    Sep 2002
    Messaggi
    145

    Gulp!!!

    Proprio nessuno mi vuole aiutare?
    La VERTENZA é NULLA senza CONTRATTO

  6. #6
    Originariamente inviato da Gamma
    Se non risolvo questo tipo di problema, credo che smetterò di studiare asp.net.
    Please...
    Non mi sembra che hai studiato granche' asp.net. Se poi aspetti di avere risposte su un forum per continuare o meno a studiare una tecnologia complessa come .net allora stai fresco.
    Dal titolo del post sembra che si tratti di una questione legata all'uso di user controls invece si tratta solo di scrivere correttamente una procedura (che puo' stare in un user control o meno) per il login dell'utente. Cmq, di seguito ti faccio un esempio che puo' esserti utile come spunto per quello che vuoi fare. Evita di eseguire sul db una query prendendo i dati inseriti dall'utente e appiccicandoli nell'sql. Usa invece i parametri come indicato nell'esempio.

    Dim sqlString = "SELECT * FROM utenti WHERE user_password = ? AND user_user = ?"
    Dim myCom As New OdbcCommand(sqlString, myConn)
    myCom.Parameters.Add("@Username", OdbcType.VarChar).Value = user.Text
    myCom.Parameters.Add("@Pass", OdbcType.VarChar).Value = pwd.Text
    myConn.Open()
    Dim myReader As OdbcDataReader
    myReader = myCom.ExecuteReader()
    If myReader.HasRows Then
    While myReader.read
    If not IsDBNull(myReader(myReader.GetOrdinal("nomecampo") )) Then testo_msg.text = myReader.GetString(myReader.GetOrdinal("nomecampo" ))
    End While
    else
    Session("user") = "Guest"
    end if
    myReader.Close
    myConn.Close
    Saluti a tutti
    Riccardo

  7. #7
    Utente di HTML.it L'avatar di Gamma
    Registrato dal
    Sep 2002
    Messaggi
    145
    Forse non mi sono spiegato bene...

    Il mio problema non è il recupero di dati da db. Il problema è cambiare il contenuto dell'user control, cioè se il login ha esito positivo visualizzo una cosa, altrimenti ne visualizzo un'altra.
    Comunque grazie per i suggerimenti
    La VERTENZA é NULLA senza CONTRATTO

  8. #8
    Originariamente inviato da Gamma
    Il mio problema non è il recupero di dati da db
    Il codice che hai postato invece di problemi ne aveva visto che non poteva funzionare. Per leggere un datareader devi sempre farlo dall'inizio alla fine anche se sei sicuro che c'e' solo un record e quindi usi un ciclo
    codice:
    while dr.read
    ' codice con cui leggi i valore
    end while
    Quando leggi valori da db con un datareader devi sempre preoccuparti che non siano dbnull altrimenti ti ritrovi con una bella eccezione.
    Infine ti ripeto che non e' buona cosa (per non dire peggio) prendere imput dell'utente, appiccicarlo in una query sql e eseguirla sul db. Se vuoi una prova di cio basta che dai l'indirizzo del sito dove fai una cosa simile e tempo 10 minuti puoi anche chiuderlo e buttare via la chiave
    Saluti a tutti
    Riccardo

  9. #9
    Utente di HTML.it L'avatar di Gamma
    Registrato dal
    Sep 2002
    Messaggi
    145
    Grazie ancora per i consigli relativi alla sicurezza. La query è solo x la fase di sviluppo, poi penso di creare degli oggetti COM, delle stored procedures, e transazioni per quanto riguarda la maggior parte operazioni col db.

    Ti ribadisco con non sono le operazioni col db che mi preoccupano ma il resto:
    - o cambio il contenuto dell'user controll
    - o cambio dinamicamente il caricamento degli user control

    Grazie ancora
    La VERTENZA é NULLA senza CONTRATTO

  10. #10
    Originariamente inviato da Gamma
    ...poi penso di creare degli oggetti COM...
    spero per te che non creerai oggetti com visto che uno dei vantaggi del framework e' stato proprio quello di sganciarsi dalla necessita di registrazione delle dll e robacce varie che succedevano nel mondo pre .net
    - o cambio il contenuto dell'user controll
    - o cambio dinamicamente il caricamento degli user control
    Non capisco la questione. Caricare dinamicamente i user controls che ti servono in base al contesto e/o all'utente e' comunque una buona tecnica. Per quanto riguarda il contenuto dello specifico user control dovresti visualizzare il form di login se la variabile di sessione non e' valorizzata correttamente (visto che usi questa tecnica per l'autenticazione) oppure nascondi il form di login e visualizzi un messaggio.
    Saluti a tutti
    Riccardo

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 © 2025 vBulletin Solutions, Inc. All rights reserved.