120 messaggi dal 01 marzo 2002
dunque ... ho questo problema banale (per voi)

immaginate una form di registrazione con due campi:

<form method="POST" action="log.asp">
<input name="email">
<input name="pass" type="password">
</form>

immaginate adesso che abbia la necessità di
memorizzare i valori dei due campi in 2 session
in modo da far comparire direttamente sulla pagina
del login (log.asp) i valori inseriti.

subito dopo i campi sopraindicati
procedo in questa maniera:

<%
pass = request.Form("email")
session("email")=passemail
pass = request.Form("pass")
session("pass")=passpass
%>

Nella pagina log.asp invece:

<input name="password" value="<%=session("passpass")%>">
<input name="email" value="<%=session("passemail")%>">

Purtroppo non funge ... i due cmpi rimangono bianchi :(

Qualcuno mi aiuta?

Bye
R@m ^_^
l'alchimista

--
R@m
^_^
593 messaggi dal 09 ottobre 2002
www.dotnetside.org
Il problema non è banale come dici tu ma assurdo

Ti spiego:

pass = request.Form("email")
e questo va bene perchè serve a recuperarti il valore del campo Email che assegni ad una variabile (contenitore) denominata "pass"

---> session("email")=passemail ??????????

Che cos'è passemail? Hai creato una variabile di sessione "email" a cui non assegni nessun contenuto (sarà pertanto vuota)

Stesso discorso per l'assegnazione successiva:

---> session("pass")=passpass ?????????

Che cos'è passpass uno scioglilingua ?

E poi, come se non bastasse:

<input name="password" value="<%=session("passpass")%>">
<input name="email" value="<%=session("passemail")%>">

Da dove spuntano (quando mai le hai inizializzate e/o valorizzate) session("passpass") e session("passemail")?

Non prendertela ma ti mancano proprio le basi per la programmazione.

Una variabile (che al di là del nome altro non è che un recipiente) affinchè abbia un contenuto che possiamo poi utilizzare dobbiamo prima mettercelo (valorizzazione).

E quando lo abbiamo fatto, per prelevarlo dobbiamo riferirci al suo nome così come lo abbiamo impostato all'inizio. (Se abbiamo messo le camicie nel cassetto "camicie" non possiamo ptendere di aprire il cassetto "mutande" e trovarci le camicie!)

Il metodo corretto, a titolo di esempio su come valorizzare le variabili, perchè il tuo metodo e l'uso che ne vuoi fare non l'ho affatto capito, è il seguente:

Nella pagina che elabora i dati inviati dal form (log.asp):
Dim strEmail, strPassword
 
' Recupero i valori dal form
strEmail = Request.Form("email")
strPassword = Request.Form("password")
 
' Li assegno alle variabili di sessione
Session("email") = strEmail
Session("password") = strPassword
 
' dove ti occorrono:
<input name="password" value="<%=session("password")%>"> 
<input name="email" value="<%=session("email")%>"> 


Consiglio: procurati un buon testo e studia. Ti servirà

Pochi post. Anzi, quasi quasi spengo
http://www.dotnetside.org/
120 messaggi dal 01 marzo 2002
Grazie per il tuo aiuto.

purtroppo non son riuscita a far funzionare la cosa.

Mi spiego meglio:
ho seguito questo tutorial
http://www.mrwebmaster.it/tutorial/asp/tutorial178.htm
che mi permette di creare delle pagine protette tramite prima una fase di registrazione e poi una fase di login.

Sulla cia di questo tutorial ho creato:
1) pagina di login (login.asp)
2) una pagina di registrazione (reg.asp)
3) ed una pagina dove è possibile inviare dei dati (info.asp)

ora tutto funziona bene, ma vorrei far in modo (per risparmiare tempo) che dopo la registrazione la pagina di login mi si presenti con i campi già compilati con i parametri da me scelti.

ho fatto varie prove ma non son riuscita.

Ps
' con questo credevo di recuperare il valore del campo
pass = request.Form("email")

' con questo credevo di settare la variabile email
' come sessione di nome passmail
session("email")=passemail

I nomi astrusi dipendono dal fatto che nelle pagine asp ci sono già variabili con nomi tipo "email" "pass" etc..

--
R@m
^_^
21 messaggi dal 21 settembre 2004
;)

se ho ben capito, vorresti che, dopo aver fatto la registrazione nella pagina di login apparissero i campi user e pass gia' compilati, giusto?

Incollo qua il tuo codice della registrazione modificato :

<%
'Creo la variabile Action
Dim Action 
Action = request.form("act")

'Se Action è vuoto stampo il modulo
if Action = "" then
%>

<form method="POST">
<input type="hidden" name="act" value="salva">
<table border="0">
<tr><td>Tua Email</td><td><input type="text" name="email" size="30"></td></tr>
<tr><td>Username</td><td><input type="text" name="user" size="30"></td></tr>
<tr><td>Password</td><td><input type="password" name="pass" size="30"></td></tr>
<tr><td colspan="2"><input type="submit" value="ISCRIVITI"></td></tr>
</table>
</form>

<%
'Se Action ha come valore "salva"...
'Inserisco i valori del modulo nel DB 
elseif Action = "salva" then

'Apro la connessione al DB
Dim Conn
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&_
Server.MapPath("utenti_sito.mdb") 

'Aggiungo un nuovo record al DB
Dim Rs
Set Rs = Server.CreateObject("ADODB.Recordset")
Rs.Open "UTENTI", conn, 1, 3
Rs.AddNew()
Rs("email") = request.form("email")
Rs("user") = request.form("user")
Rs("pass") = request.form("pass")
Rs("stato") = False
Rs.Update

Session("UserTemp") = request.form("user")
Session("PassTemp") = request.form("pass")

'chiudo recordset e connessione
Rs.Close
set Rs = Nothing
Conn.Close
set Conn = Nothing

'Messaggio a video di conferma
%>

Registrazione avvenuta con Successo, clicca <a href="login.asp"> Qua </a> per eseguire il login

<%
end if
%>






e questo quello del login modificato :


<%
'Creo la variabile Action
'ha come valore il campo act del form
Dim Action
Action = request.form("act")

'Creo la variabile PrimaPagina
'e la setto sulla mia prima pagina asp protetta
Dim PrimaPagina
PrimaPagina = "default.asp"

'se Action è vuota stampo il form
if Action = "" then

%>

<form method="POST" action="login.asp">

<input type="hidden" name="act" value="enter">

<table border="0">

<tr>

<td>User</td>
<% if not Session("UserTemp") = "" then %>

<td><input type="text" name="u" size="20" value="<%=Session("UserTemp")%>"></td>

<%else%>

<td><input type="text" name="u" size="20"></td>

<%end if%>

</tr>


<tr>

<td>Pass</td>


<% if not Session("PassTemp") = "" then %>

<td><input type="password" name="p" size="20" value="<%=Session("PassTemp")%>"></td>

<%else%>

<td><input type="password" name="p" size="20"></td>

<%end if%>

</tr>

<tr>
<td colspan="2">
<input type="submit" value="Login"></td>

</tr>


</table>
</form>

<%
'se Action ha come valore "enter"...
elseif Action = "enter" then

'creo la variabile User
'con il valore del campo u del form
Dim User
User = request.form("u")

'creo la variabile Pass
'con il valore del campo p del form
Dim Pass
Pass = request.form("p")

'Se User e/o Pass è vuota stampo un errore
if (User = "" or Pass = "") then
response.write "Form incompleto!"
response.end

'in caso contrario procedo alla verifica
else

'Apro la connessione al DB
Dim Conn
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&_
Server.MapPath("utenti_sito.mdb")

'Imposto la query ed apro il recordset
Dim Query, Rs
Query = "select * from UTENTI where user = '" & User & "' "&_
"and pass = '" & Pass & "'"
Set Rs = Server.CreateObject("ADODB.Recordset")
Rs.Open Query, Conn, 3, 3

'se nessun utente corrisponde stampo un errore
if Rs.EOF then
response.write "Spiacente! Login non corretto"
response.end

'in caso contrario imposto la mia session
'ed effettuo il redirect sulla prima pagina
else
Session("User") = User
Session("Pass") = Pass
Response.Redirect PrimaPagina

end if

'chiudo Rcordset e connessione
Rs.Close
set Rs = Nothing
Conn.Close
Set Conn= Nothing

end if
end if
%>






Spero di non aver fatto errori che ho scritto di fretta, e di aver capito cosa potesse servirti :) ciao ciao ;))))
120 messaggi dal 01 marzo 2002
Smack :*

grazie mille
non avevo visto il tuo post

@ presto
R@m ^_^

--
R@m
^_^

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.