Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15

Discussione: controllo codice

  1. #1
    Utente di HTML.it L'avatar di Francis87
    Registrato dal
    Jun 2003
    Messaggi
    5,970

    controllo codice

    sapete dirmi se questo è codice VALIDO??
    grazie 1000!!!

    codice:
    Sub Entra(sender As Object, e As EventArgs)
     Dim cn
     Dim rs As RecordSet
     Dim surname As String
     Dim name As String
     Dim pwd As String
     Dim check As Boolean
     surname = txtCognome.Text
     name = txtNome.Text
     pwd = pwd.Text
     cn = Server.CreateObject("ADODB.Connection")
     cn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & server.mappath("\utenti.mdb") 
     rs = cn.Execute("SELECT contatore, cognome, nome, password FROM utenti WHERE cognome = '" & surname & "'", nome = '" & name & "'")
     check = 0
     Do While NOT rs.EOF
      If pwd = rs("password").Value Then
       session("login") = 1
       sessione("user") = rs("contatore").Value
       response.redirect "page.aspx"
       check = 1
      Else
       'raise error password sbagliata Errorp()
       check = 1
      End If
      If check = 0 Then
       'raise error no user Erroru()
      End If
     Loop
    End Sub
    
    Sub Page_UnLoad(sender As Object, e As EventArgs)
     cn.Close
     cn = Nothing
     rs = Nothing
    End Sub
    Heaven's closed. Hell sold out.

    Linux 2.6.26-2-amd64
    Debian squeeze

  2. #2
    Utente di HTML.it L'avatar di Umanista
    Registrato dal
    Jan 2002
    Messaggi
    1,022
    E' un incrocio tra asp classico e asp.net. Magari funziona pure, ma non mi pare il massimo dal punto di vista dell'efficienza.

  3. #3
    Utente di HTML.it L'avatar di Francis87
    Registrato dal
    Jun 2003
    Messaggi
    5,970
    diciamo di si, è un incrocio, e appunto x questo volevo sapere se qualcuno poteva darmi una mano a portarlo a ASP.NET!

    Heaven's closed. Hell sold out.

    Linux 2.6.26-2-amd64
    Debian squeeze

  4. #4
    codice:
    Sub nomechevuoi(sender as object, e as eventargs)
    Dim logConn as new OleDbConnection
    
    With logConn
    .connectionstring = 'metti la stringa di connessione
    End With
    
    Dim Sql as string
    Sql = "SELECT contatore, cognome, nome, password FROM utenti WHERE cognome = '" & surname & "'", nome = '" & name & "'"
    
    Dim logAdapter as new OleDbDataAdapter(sql, logconn)
    Dim logDs as DataSet = New DataSet()
    logAdapter.Fill(logDs, "utenti")
    
    dim utentetrovato as integer
    utentetrovato = LogDs.Tables("utenti").Rows.Count
    
    if utentetrovato = 0 then
    response.redirect("a_cagare.html")
    else
    session("login") = 1
    sessione("user") = LogDs.Tables("utenti").rows(0)("Contatore")
    response.redirect("pagina.aspx")
    
    logConn.close
    End Sub
    fatta al volo
    non ho nemmeno controllato se ci sono errori. cmq
    vedi te ciao

  5. #5
    Utente di HTML.it L'avatar di Umanista
    Registrato dal
    Jan 2002
    Messaggi
    1,022
    Mi permetto di aggiungere quanto segue.

    Se già non l'hai fatto, ti consiglio di inserire la stringa di connessione nel file web.config o in un controllo utente.

    Ricorda che per pescare i dati dal db, in asp.net puoi ricorrere al DataSet (vedi esempio di JC_) o a un DataReader (che assomiglia al vecchio recordset asp). Personalmente preferisco usare sempre il datareader, a meno che qualcuno non mi punti la pistola alla testa e mi costringa ad usare il dataset. Secondo me (ma questa è una mia opinione) proprio nel tuo caso è più adatto un datareader.

    Inoltre per quanto riguarda le procedure di login, asp.net mette a disposizione anche delle particolari procedure, note come Form Validation alle quali ti consiglio di dare un'occhiata.

    Ciao

  6. #6
    Utente di HTML.it L'avatar di Francis87
    Registrato dal
    Jun 2003
    Messaggi
    5,970
    x form validation, intendi tutti i controlli di validazione dei campi??

    con il codice di Jc_ il dataset NON mi viene mostrato, vero???

    a me serve solo il login!!!!

    e cosa sarebbe questo???

    codice:
    dim utentetrovato as integer
    utentetrovato = LogDs.Tables("utenti").Rows.Count
    grazie x l'aiuto!


    Heaven's closed. Hell sold out.

    Linux 2.6.26-2-amd64
    Debian squeeze

  7. #7
    Utente di HTML.it L'avatar di Umanista
    Registrato dal
    Jan 2002
    Messaggi
    1,022
    Originariamente inviato da Francis87
    x form validation, intendi tutti i controlli di validazione dei campi??
    No. In breve funziona così.
    Nella cartella che vuoi proteggere, inserisci un file web.config con questo codice:

    <configuration>
    <system.web>
    <authorization>
    <deny users = "?" />
    </authorization>
    </system.web>
    </configuration>

    Quanto tenterai di entrare in quella cartella, automaticamente asp.net
    fa un redirect alla pagina login.aspx (per default il nome è questo, ma può essere modificato).
    Nella pagina login.aspx ci sarà un semplice form per l'immisione di username password e checkbox per la richiesta dei coockie.
    Poi scriverai una cosa del genere:


    <script runat="server">

    Sub Submit_OnClick(Src As Object, E As EventArgs)

    If IsValid Then


    ' Qui volendo puoi estrarre i dati dal database.
    ' Se le persone autorizzate sono poche, puoi salvare
    ' username e password direttamente nel file web.config

    If login.Text="tizio" And password.Text="caio" Then

    ' Rimanda alla prima pagina cercata nella cartella protetta
    ' e genera coockie se la casella "cookie" è spuntata

    FormsAuthentication.RedirectFromLoginPage(login.Te xt, cookie.checked)

    Else

    messaggio.Text="Login o password errati."

    End If
    End If

    End Sub

    </script>

    C'è molto altro da dire, ma ti consiglio di consultare il sito MSDN
    per approfondimenti.

    Ciao

  8. #8
    Utente di HTML.it L'avatar di Francis87
    Registrato dal
    Jun 2003
    Messaggi
    5,970
    c'è qualcuno ke mi può spiegare il codice postato da Jc_ ????

    PER FAVORE!!!
    Heaven's closed. Hell sold out.

    Linux 2.6.26-2-amd64
    Debian squeeze

  9. #9
    Utente di HTML.it L'avatar di Umanista
    Registrato dal
    Jan 2002
    Messaggi
    1,022
    Originariamente inviato da Francis87
    c'è qualcuno ke mi può spiegare il codice postato da Jc_ ????

    PER FAVORE!!!
    Jc_ ha riempito una DataTable con un Dataset. Il Datatable riproduce la tabella del database. Dopo ha contato le righe del datatable. Se ottiene 0 significa che il dataTable è vuoto, e quindi l'utente non è nel db, o viceversa.

  10. #10
    Utente di HTML.it L'avatar di Francis87
    Registrato dal
    Jun 2003
    Messaggi
    5,970
    beh, o il datatable è vuoto o ha una sola riga!!

    cmq... bisogna fare tt sto caos x un semplice login ??



    ciao
    Heaven's closed. Hell sold out.

    Linux 2.6.26-2-amd64
    Debian squeeze

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.