Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. Categorie
    3. Coding e Sistemistica
    4. Coding
    5. [ASP]come creare un login e registrazione utenti
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • L
      legolas Moderatore • ultima modifica di

      ah, te vuoi anche sapere l'email di chi si iscrive:

      bhe nel form ci metti un campo mail

      <input type="text" name="mail" id="mail"/>
      

      poi
      nel campo from:

       objMail.From = request.form("mail")
      

      Ovviamente si può migliorare aggiungendo un controllo per la validità della mail, ma comuqnue questo è il codice base

      Ciao:ciauz:

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • G
        gelova User Attivo • ultima modifica di

        Quindi tirando le somme il codice dovrebbe essere questo:
        Ma non capisco quale dei due devo utilizzare "objMail.From"
        guarda in fondo alla pagina. :bho:

        <%
        dim nome
        dim user
        dim pwd
        'evitiamo l'SQL Injection replicando gli apici
        nome=Replace(request.form("form_nome"),"'","''")
        user=Replace(request.form("form_user"),"'","''")
        password=Replace(request.form("form_password"),"'","''")
        Dim conn
        Set conn = Server.CreateObject("ADODB.Connection")
        conn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & server.MapPath("mdb-database/pass.mdb")
        sql = "SELECT * FROM pass WHERE user = '" & user & "'"
        Set rs = Server.CreateObject("ADODB.Recordset")
        rs.Open sql, conn, 3, 3

        If rs.EOF then

        RS.AddNew
        rs.Fields("nome")=nome
        rs.Fields("user")=user
        rs.Fields("pwd")=pwd
        rs.update
        RS.Close
        Set RS=Nothing
        conn.Close
        Set conn=Nothing
        response.redirect("reg_ok.htm")

        Else

        Response.Write("User giá esistente")
        Response.End
        RS.Close
        Set RS=Nothing
        conn.Close
        Set conn=Nothing

        End if
        %>

        Dim objMail, objConfig
        Set objMail = Server.createObject("CDO.Message")
        Set objConfig = Server.createObject ("CDO.Configuration")

        With objConfig
        .Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "il tuo smtp"
        .Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
        .Fields("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
        .Fields("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60
        .Fields.update
        End With

        Set objMail.Configuration = objConfig
        objMail.From = "[email protected]" 'Mail del destinatario <----- QUESTO
        objMail.From = request.form("mail")                 <----  O QUESTO
        objMail.To = "[email protected]" 'Mail del destinatario
        objMail.Subject = "Oggetto mail"
        
        objMail.HTMLBody = "Ciao la tua user è: " & user & " e la tua password è:" & password
        objMail.Send()
        Set objMail = Nothing
        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • L
          legolas Moderatore • ultima modifica di

          Devi usare l'ultimo che ti ho dato.

          La prossima volta che posti il codice per favore racchiudilo tra i tag appropriati. [ CODE ] [/ CODE ]

          Ciao

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • G
            gelova User Attivo • ultima modifica di

            Scusami hai ragione, ok lo provo e ti faccio sapere !;)

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • G
              gelova User Attivo • ultima modifica di

              @Legolas said:

              <%
              Dim objMail, objConfig
              Set objMail = Server.createObject("CDO.Message")
              Set objConfig = Server.createObject ("CDO.Configuration")

              With objConfig
              .Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "il tuo smtp"
              .Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
              .Fields("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
              .Fields("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60
              .Fields.update
              End With

              Set objMail.Configuration = objConfig
              objMail.From = request.form("mail")
              objMail.To = "qui ci metti la mail del destinatario" ' Destinatario
              objMail.Subject = "Oggetto mail"
              objMail.HTMLBody = "Ciao la tua user è: " & user & " e la tua password è:" & password
              objMail.Send()
              Set objMail = Nothing
              

              %>

              Scusami Legolas se solo ho provato il codice da te inviatomi, (ho avuto qualche problema di troppo) ma prima di provarlo ho nuovamente controllato e secondo me vi è qualcosa che non và !
              @Legolas said:

              objMail.To = "qui ci metti la mail del destinatario" ' Destinatario
              Lo scopo del form con registrazione (oltre naturalmente alla registrazione stessa) è anche quella di sapere chi si è registrato, e questo desidererei saperlo tramite un'email che mi arriva non appena l'utente si è appena registrato !

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • L
                legolas Moderatore • ultima modifica di

                objMail.To = "qui ci metti la mail del destinatario" ' Destinatario

                La mail deve arrivare a te giusto?

                Quindi ci metti la tua email

                Ciao

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • G
                  gelova User Attivo • ultima modifica di

                  Non ho ben capito come vanno legati i due gruppi di codici quello della registrazione utente e quello dell'invio email
                  Io li ho scritti così,ho provato la registrazione avviene ma l'email non la manda :bho:

                  @Legolas said:

                  <%
                  dim nome
                  dim user
                  dim pwd
                  'evitiamo l'SQL Injection replicando gli apici
                  nome=Replace(request.form("form_nome"),"'","''")
                  user=Replace(request.form("form_user"),"'","''")
                  password=Replace(request.form("form_password"),"'","''")
                  Dim conn
                  Set conn = Server.CreateObject("ADODB.Connection")
                  conn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & server.MapPath("mdb-database/pass.mdb")
                  sql = "SELECT * FROM pass WHERE user = '" & user & "'"
                  Set rs = Server.CreateObject("ADODB.Recordset")
                  rs.Open sql, conn, 3, 3

                  If rs.EOF then

                  RS.AddNew
                  rs.Fields("nome")=nome
                  rs.Fields("user")=user
                  rs.Fields("pwd")=pwd
                  rs.update
                  RS.Close
                  Set RS=Nothing
                  conn.Close
                  Set conn=Nothing
                  response.redirect("reg_ok.htm")

                  Else

                  Response.Write("User giá esistente")
                  Response.End
                  RS.Close
                  Set RS=Nothing
                  conn.Close
                  Set conn=Nothing

                  End if

                  Dim objMail, objConfig
                  Set objMail = Server.createObject("CDO.Message")
                  Set objConfig = Server.createObject ("CDO.Configuration")

                  With objConfig
                  .Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "mio smtp.it"
                  .Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
                  .Fields("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
                  .Fields("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60
                  .Fields.update
                  End With

                  Set objMail.Configuration = objConfig
                  objMail.From = request.form("mail")
                  objMail.To = "[email protected]" ' Destinatario
                  objMail.Subject = "Oggetto mail"
                  objMail.HTMLBody = "Ciao la tua user è: " & user & " e la tua password è:" & password
                  objMail.Send()
                  Set objMail = Nothing
                  %>

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • M
                    madai User Attivo • ultima modifica di

                    gelova prova a ragionare anche da solo... altrimenti tra un po' Legolas emette fattura 😄

                    gelova, credo che tu debba fare una query al dastabase per recuperare l'email alla quale inviare la registrazione

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • G
                      gelova User Attivo • ultima modifica di

                      Avete ragione....ma è la prima volta che mi cimento in queste cose scusatemi se sono diventato insistente 😞

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • G
                        gelova User Attivo • ultima modifica di

                        Vi prego non odiatemi...........ma ho ancora qualche problema !
                        Una volta che la registrazione è andata a buon fine, si aprirà la pagina
                        "reg_ok.htm" che dà il benvenuto ecc....
                        Ma ho notato che anche se non mi registro posso accedere a quella pagina,
                        scrivendo sulla barra di navigazione :
                        "http://pagina di inserimento dati/reg_ok.htm"

                        Quindi in pratica chiunque conoscendo il nome della pag. potrà accedere saltando la procedura di registrazione :mmm:

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        • L
                          legolas Moderatore • ultima modifica di

                          Puoi benissimo usare le var di sessione così controlli se l'utente è registato.
                          Se lo è gli mostri la pagina altrimenti gli mostri altro

                          Ciao:ciauz:

                          0 Miglior Risposta Ringrazia Cita Rispondi

                            1 Risposta Ultima Risposta
                          • G
                            gelova User Attivo • ultima modifica di

                            le var di sessione
                            Cosa sarebbero le var di sessione :mmm:

                            0 Miglior Risposta Ringrazia Cita Rispondi

                              1 Risposta Ultima Risposta
                            • L
                              la.maglia.rosanero User Attivo • ultima modifica di

                              Gelova la mia piccola esperienza mi dice di consigliarti questo semplice script che uso pure io

                              <%
                              if Session("Autenticato")<>"OK" then
                              Response.Redirect("index.asp")
                              end if
                              %>

                              dove index.asp è la pagina che gli spunta se non è autenticato....differentemente se lo è glispunta la pagina versola quale ha effettivamente puntato!
                              questa stringa la metti all'inizio codice della pagina....nella linea 1 anche!

                              0 Miglior Risposta Ringrazia Cita Rispondi

                                1 Risposta Ultima Risposta
                              • G
                                gelova User Attivo • ultima modifica di

                                Grazie 1000 !!!!

                                0 Miglior Risposta Ringrazia Cita Rispondi

                                  1 Risposta Ultima Risposta
                                • G
                                  gelova User Attivo • ultima modifica di

                                  Ho provato il tuo script ma con dispicere devo dirti che non mi funziona
                                  l'ho modificato in base alla sessione del mio codice così:

                                  <%
                                  if Session("registrato")="sicuro" then
                                  Response.Redirect("index.asp")
                                  end if
                                  %>
                                  Questo è il mio file che fa il check

                                  <%
                                  dim user
                                  dim pwd
                                  dim url
                                  user=replace(request.form("form_user"),"'","''")
                                  pwd=replace(request.form("form_password"),"'","''")
                                  url=request.form("form_url")
                                  Dim Conn
                                  Set Conn = Server.CreateObject("ADODB.Connection")
                                  conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & server.mappath("mdb-database/pass.mdb")
                                  Set rs = Server.CreateObject("ADODB.Recordset")
                                  qry = "Select * from pass Where ((user='"
                                  qry = qry & user & "') AND (pwd='"
                                  qry = qry & pwd & "'));"
                                  rs.ActiveConnection = conn
                                  rs.CursorLocation = 2
                                  rs.Open qry
                                  Response.Expires=0
                                  if rs.EOF then
                                  response.redirect("check_out.htm")
                                  else
                                  session("registrato")="sicuro"
                                  rs.close
                                  set rs = nothing
                                  conn.close
                                  set conn = nothing
                                  response.redirect(url)
                                  end if
                                  %>

                                  0 Miglior Risposta Ringrazia Cita Rispondi

                                    1 Risposta Ultima Risposta
                                  • L
                                    la.maglia.rosanero User Attivo • ultima modifica di

                                    allora ammettiamo che la pagina che non vuoi far vedere è la pagina dopolaregistrazione.asp
                                    e quella del login è login.asp

                                    allora
                                    questo è il codice della pagina dololaregistrazione.asp :
                                    <%
                                    .......
                                    ...........
                                    %>

                                    tu il pezzo di codice che ti ho dato devi metterlo nel codice dalla pagina dopolaregistrazione.asp prima del suo codice <% .....................%>
                                    capito..?
                                    ovviamente modifica la pagina index.asp con quella del tuo login!
                                    prova ad andare in questa pagina mia http://www.la-maglia-rosanero.com/foto_stadio/archiviofoto/add.asp come vedi on sei validato e ti rimanda alla pagina di login nel mio caso index.asp!

                                    tu hai INTEGRATO il pezzodi codice nel tuo codice...invece devi separarli per come te l'h o dato!
                                    tipo

                                    <%
                                    if Session("Autenticato")<>"OK" then
                                      Response.Redirect("index.asp")
                                    end if
                                    %>
                                    <html>
                                    <head>
                                    <title>aggiungi record</title>
                                    </head>
                                    <body bgcolor="#FF99CC">
                                    <div align="center">
                                    <center>
                                    <form method="post" action="add-process.asp">
                                    <p>&nbsp;</p>
                                    <table width="660" border="0" cellspacing="0" cellpadding="1" height="230" align="center" bgcolor="#000000" id="table1">
                                        <tr> 
                                          <td height="66" width="967"> 
                                            <table width="100%" border="0" cellspacing="0" cellpadding="0" align="center" height="201" id="table2">
                                    
                                    

                                    questo è parte del codice dall pagina che ti ho appena fatto vedere

                                    0 Miglior Risposta Ringrazia Cita Rispondi

                                      1 Risposta Ultima Risposta
                                    • G
                                      gelova User Attivo • ultima modifica di

                                      Ma è proprio quello che ho fatto, il tuo codice e cioè
                                      <%
                                      if Session("registrato")="sicuro" then
                                      Response.Redirect("reicreg.htm")
                                      end if
                                      %>
                                      L' ho inserito in cima alla pagina da nascondere e cioè
                                      "reg_ok.htm" che sarebbe la pagina che appare dopo l'avvenuta corretta registrazione
                                      naturalmente l'ho modificata perchè la mia pag "check.asp" in session era diversa (vedi sopra) :bho:

                                      0 Miglior Risposta Ringrazia Cita Rispondi

                                        1 Risposta Ultima Risposta
                                      • G
                                        gelova User Attivo • ultima modifica di

                                        Aspetta.....Aspetta.....!!!!
                                        Ho provato a rinominare la pag da nascondere (reg_ok.htm)
                                        da htm ad asp e funziona, ma allora le pag da nascondere devono per forza essere in asp ?

                                        0 Miglior Risposta Ringrazia Cita Rispondi

                                          1 Risposta Ultima Risposta
                                        • L
                                          la.maglia.rosanero User Attivo • ultima modifica di

                                          eh siamo in sezione asp 🙂
                                          si solo per l'asp funziona 🙂

                                          0 Miglior Risposta Ringrazia Cita Rispondi

                                            1 Risposta Ultima Risposta
                                          • G
                                            gelova User Attivo • ultima modifica di

                                            Ho provato a lasciare vuoti i campi e cliccare sul tasto registrami e mi appare un schermata bianca con un errore cosa dovrei inserire per obbligare l'utente a riempire tutti i campi ?

                                            Grazie !!!!!

                                            0 Miglior Risposta Ringrazia Cita Rispondi

                                              1 Risposta Ultima Risposta
                                            Caricamento altri post
                                            Rispondi
                                            • Topic risposta
                                            Effettua l'accesso per rispondere
                                            • Da Vecchi a Nuovi
                                            • Da Nuovi a Vecchi
                                            • Più Voti