[ASP] Password Login per area riservata

windt

Utente Attivo
7 Giu 2016
59
5
8
Salve ragazzi chi mi aiuta!!!
Ho un form con registrazione per una area riservata. Compilando tutti i campi (obbligati) quando confermo restistrazione mi riporta errore alla riga 3 della seguente funzione:

1 'If new email address then allow to register
2 Else
3 adorst.AddNew
4 adorst.Fields("name") = ChkString(name)
5 adorst.Fields("email") = ChkString(email)
6 adorst.Fields("pass") = ChkString(password)
7 adorst.Fields("address") = ChkString(address)
8 adorst.Fields("town") = ChkString(town)
9 adorst.Fields("country") = country
10 adorst.Fields("signupdate") = date
11 adorst.Fields("ip") = Request.ServerVariables("REMOTE_ADDR")
12 adorst.Fields("subscribe") = mlist_option
13 adorst.Fields("active") = "no"
14 adorst.Update
15 adorst.MoveFirst
16 End If
17 adorst.Close

Perché mi da errore :-( ?????
 

cris8380

Moderatore
Membro dello Staff
MOD
3 Giu 2016
261
14
18
37
Ciao
credo possa essere la configurazione dell'indirizzo server SMTP
ma per poterlo capire c'è bisogno dello script completo.
 
  • Like
Reactions: windt

windt

Utente Attivo
7 Giu 2016
59
5
8
Ciao Criss, non credo sia configurazione SMTP. Simulando di avere perso la pass e faccio richiesta di inviarla viene eseguito tutto alla perfezione. Girarti tutto lo script non è un problema. Dove te lo invio??
 

cris8380

Moderatore
Membro dello Staff
MOD
3 Giu 2016
261
14
18
37
Se lo posti qui è meglio, ovviamente rendilo privo dei dati sensibili.
 
  • Like
Reactions: windt

Paolo69

Moderatore
Membro dello Staff
MOD
18 Feb 2010
549
13
18
Italy
www.riciclarte.info
Codice:
adorst.AddNew
In pratica il codice cerca di inserire un nuovo recordset composto dai campi successivi, non ci riesce per diversi motivi tra cui errore nella configurazione della connessione, permessi di sola lettura del file MDB o altro...
 
  • Like
Reactions: windt

windt

Utente Attivo
7 Giu 2016
59
5
8
Ciao Paolo, ben ritornato :) Posto qui tutto lo script completo:

<%

%>
<!--#include file="inc/common.asp"-->
<!--#include file="inc/mailobject.asp"-->

<%
strMailSubject = "Your New Account"
Dim name, email, password, address, town, zipcode, country
name=(trim(request.form("Name")))
email=(trim(request.form("email")))
password=(trim(request.form("ConfirmPassword")))
If password = "" Then
Session("msg") = ("Please enter a password")
response.redirect ("register.asp")
End If
address=(trim(request.form("address")))
town=(trim(request.form("town")))
country=(trim(request.form("country")))
If request.form("subscribe") = "true" then
mlist_option = "yes"
Else
mlist_option ="no"
End If

ConnectMembersDB()
connectrst()
strSQL = "SELECT * FROM [memberlist] WHERE = '" & email & "' "
'Check new email is already registered or not
adorst.Open strSQL, adocon, 3, 3
If Not adorst.BOF AND Not adorst.EOF Then
Session("msg") = ("Email ID: "& " " & "<b>" & email & "</b>" & " is already registered.")
response.redirect("register.asp")
'If new email address then allow to register
Else
adorst.AddNew
adorst.Fields("name") = ChkString(name)
adorst.Fields("email") = ChkString(email)
adorst.Fields("pass") = ChkString(password)
adorst.Fields("address") = ChkString(address)
adorst.Fields("town") = ChkString(town)
adorst.Fields("country") = country
adorst.Fields("signupdate") = date
adorst.Fields("ip") = Request.ServerVariables("REMOTE_ADDR")
adorst.Fields("subscribe") = mlist_option
adorst.Fields("active") = "no"
adorst.Update
adorst.MoveFirst
End If
adorst.Close
Set adorst = Nothing

'Fatch the newly registered user ID
Set rstGetNewUserInfo = Server.CreateObject("ADODB.Recordset")
rstGetNewUserInfo_Open "SELECT * FROM [memberlist] WHERE [email] = '"& email & "'", adocon, 1, 1
intNewUserID = rstGetNewUserInfo("id")
strNewUserEmail = rstGetNewUserInfo("email")
strNewUserName = rstGetNewUserInfo("name")
strNewUserPass = rstGetNewUserInfo("pass")
rstGetNewUserInfo.Close
Set rstGetNewUserInfo = Nothing
adocon.Close
set adocon = Nothing

'Create Email Body
MailBody= ("Ciao" & " " & strNewUserName & vbcrlf & vbcrlf _
& "<p>Grazie per esserti registrato con noi. I tuoi dati di accesso nell'area riservata sono i seguenti:" & vbcrlf _
& "<p>Username: " & strNewUserEmail & vbcrlf _
& "<br>Password: " & strNewUserPass & vbcrlf _
& "<p>Per confermare l'attivazione e utilizzare il tuo accounttivation link below." & vbcrlf _
& "<p>Activation Link: " & "<a href=" & strSiteURL & "/" & strFolderName & "/activate.asp?atvId=" & intNewUserID & "&email=" & strNewUserEmail & ">" & _
strSiteURL & "/" & strFolderName & "/activate.asp?atvId=" & intNewUserID & "&email=" & strNewUserEmail & "</a>." & vbcrlf & vbcrlf _
& "<p>Warmest Regards,<br>" & vbcrlf _
& strSiteName & "<br>" & vbcrlf _
& strSiteURL & vbcrlf _
& vbcrlf _
& "<p>------------------End of Message----------------" )
strToEmail = strNewUserEmail
strFromEmail = strAdminEmail
strSubject = strMailSubject
strEmailBody = MailBody
Call SendMail(strToEmail, strFromEmail, strSubject, strEmailBody)
Session("msg") = "Congratulation!" & "<br>" & " You account is successfully created. An email containing activation link is on the way to your email.<br> Please check your email and activate your account."
response.redirect("result.asp")

%>
 

windt

Utente Attivo
7 Giu 2016
59
5
8
Ciao Paolo ben rientrato. Ti ho inviato lo script, ho provato in tutti i modi ma non cisono riuscito. Si aggiustava una cosa e non funzionava un'altra
 

Paolo69

Moderatore
Membro dello Staff
MOD
18 Feb 2010
549
13
18
Italy
www.riciclarte.info
Ecco l'errore:
Codice:
Microsoft JET Database Engine error '80040e09'

Cannot update. Database or object is read-only.

/fitness/script/registrazione/registrazione.asp, line 114
In pratica devi dare i permessi di scrittura alla cartella, in alternativa devi spastare il DB nella cartella public e modificare la connessione allo stesso.

Esempio funzionante:
http://www.caprioli.info/fitness/script/registrazione/login.asp
 
  • Like
Reactions: windt

windt

Utente Attivo
7 Giu 2016
59
5
8
Ciao Paolo, ho provato, c'e sempre un solo errore in fase di regisstrazione:
CDO.Message.1 error '80040220'

The "SendUsing" configuration value is invalid.

/registrazione/registrazione.asp, line 208

dalla riga 200 alla 210 ci trovo questo:
Case "cdosys"
Set objMessage = CreateObject("CDO.Message")
objMessage.Sender = strFromEmail
objMessage.TextBody = strMessage
objMessage.To = strFromEmail
objMessage.Subject = strSubject
objMessage.Send
If Err <> 0 Then
Err_Msg = Err_Msg & "<li>Impossibile spedire l'email. Errore: " & Err.Description & "</li>"
End if
On Error Resume Next
 
Ultima modifica:

windt

Utente Attivo
7 Giu 2016
59
5
8
Finalmente ho trovato errore. Nella configurazione di ADMIN quando si impostano i parametri, alla voce invio mail bisogna selezionare NO . Però in questo modo l'utente non riceverà mai la mail di conferma e la registrazione non potrò avvenire, ne tantomeno c'e la possibilita di recuperare la pass :-(
 
Ultima modifica:

ANDREA20

Utente Attivo
25 Giu 2016
145
1
18
23
Buona sera
io devo creare login e registrazione completta esempio reset password volevo sapere quella sarebbe il migliore da utilizzare perchè c'è anche il carrello commerciale ovviamento in programmazione senza programmi già fatti
cordiali saluti
Barletta Andrea