alejandro carnero
alejandro carnero

Reputation: 1784

Session in ASP is not storing values

I have two asp pages in the first page named verify.asp i have write this code:

verify.asp

    <%
       Username = Request.Form("loginx")    
       Password = Request.Form("passx")
       liberado
       Session("liberado") = Username 

  %>

in the second page i try to use the session variabel "liberado" with any result barra.asp ,

<%
  response.write(session("liberado"))
%>

What i'm making wrong? I m using chrome on IIS of windows 7, Username and Password have values

Upvotes: 0

Views: 1313

Answers (2)

Erik Oosterwaal
Erik Oosterwaal

Reputation: 4374

Check the application pool settings in IIS. If there are multiple worker processes active under "maximum worker processes", sessions don't always work. Sessions are stored per process, do if a different worker process handles the second request, the session from the first request might be missing. A setting of "0" means IIS uses as many processes as needed.

More information here

enter image description here

Upvotes: 1

Adam
Adam

Reputation: 926

There was nothing really wrong with your code. Although I can see you've edited it now to remove the dim from liberado, but you've left liberado behind. This means your ASP will try and call a sub called liberado, which presumably doesn't exist. You can go ahead and remove that line.

<%

    Dim Username, Password

    Username = Request.Form("loginx")
    Password = Request.Form("passx")

    Session("liberado") = Username 

%>

Trying to set a session whilst the session state is disabled will probably result in an error of some kind (and you didn't mention an error in your question). But make sure it's enabled by opening IIS and under ASP > Session Properties set "Enable Session State" to "True".

If it's already true then chances are there's something wrong with your form and the data isn't being posted. On your verify.asp page try running the following code:

for each item in request.form
    response.write item & ": " & request.form(item) & "<br>"
next

This will output a list of all the form data being posted.

This could also be a cookie issue. If you're blocking cookies from being set in Chrome then there won't be an ASP session cookie, so session values won't be accessible as you move from page to page.

In Chrome press F12 to open developer tools, click the Applications tab, and from the "Cookies" drop down menu select your domain. Check there's an ASPSESSIONID cookie present, and it's the same cookie on both your ASP pages.

Upvotes: 1

Related Questions