webForumDet fria alternativet

skapa permanent cookie

ASP

3 svar · 187 visningar · startad av rollo

Medlem sedan aug. 2001203 inlägg
Frågan#1

Tjena!

Jag skapar en cookie när man loggar in på min sida, men den försvinner när browsern stängs.

Hur kan man göra så att den blir permanent.

Koden för cookien är nedan.

Tack på förhand!

rollo

<%@LANGUAGE="VBSCRIPT"%> 
<!--#include file ="config.asp"--->
<%

Dim CheckUser__myuser
CheckUser__myuser = "" + Chr(34) + " " + Chr(34) + ""
if(request("username") <> "") then CheckUser__myuser = request("username")

%>  <%
set CheckUser = Server.CreateObject("ADODB.Recordset")
CheckUser.ActiveConnection = dbpath
CheckUser.Source = "SELECT * FROM Members  WHERE Username = '" + Replace(CheckUser__myuser, "'", "''") + "' AND Confirmed = TRUE"
CheckUser.CursorType = 0
CheckUser.CursorLocation = 2
CheckUser.LockType = 3
CheckUser.Open
CheckUser_numRows = 0
%> 

<% 
if checkUser.eof then
response.redirect"/_sec_/login.asp?error=Sorry%20That%20Username%20Is%20Not%20In%20Our%20Database%20"
End if

if checkUser("Username") = request("username") then
	if checkuser("mypass") = request("mypass") then
		response.cookies("user-name") = checkuser("username")
		response.cookies("full_name") = checkuser("Full_Name")
		response.cookies("region") = checkuser("region")
		response.cookies("distrikt") = checkuser("distrikt")
		Response.Cookies("id") = checkuser("id")
		Response.Cookies("grupp") = checkuser("grupp")	
		Response.Cookies("email") = checkuser("email")
		Response.Cookies("lang") = checkuser("lang")
		response.cookies("user-name").Expires="Jan 1, 2010"
		response.cookies("user-logged") = "Yes" 
		if filewrite <> "" then %>
			<!--#include file ="filewrite.asp"---><%
		end if
		response.cookies("check-cookies")= "true"
		response.redirect"/default.asp"
		
		
	Else
		Response.redirect"/_sec_/login.asp?error=Sorry%20Your%20Password%20Was%20Wrong"
	End if 
End if%>
Medlem sedan nov. 20017 144 inlägg
#2

istället för att skapa en cookie för varje "sak" så kan du göra en liten grupp av fler värden i en och samma kaka.

response.cookies("myCookie")("user-name") = checkuser("username")
response.cookies("myCookie")("full_name") = checkuser("Full_Name")
response.cookies("myCookie")("region") = checkuser("region")
'osv...
Response.cookies("myCookie").expires=dateadd("yyyy",10,now)
Medlem sedan aug. 2001203 inlägg
#3

Tack för ett snabbt svar!

Jag får följande meddelande
Microsoft VBScript runtime error '800a01b6'

Object doesn't support this property or method: 'Response.cookies(...)'

/_sec_/admin/login-action.asp, line 38

Koden ser numer ut så här

<%@LANGUAGE="VBSCRIPT"%> 
<!--#include file ="config.asp"--->
<%

Dim CheckUser__myuser
CheckUser__myuser = "" + Chr(34) + " " + Chr(34) + ""
if(request("username") <> "") then CheckUser__myuser = request("username")

%>  <%
set CheckUser = Server.CreateObject("ADODB.Recordset")
CheckUser.ActiveConnection = dbpath
CheckUser.Source = "SELECT * FROM Members  WHERE Username = '" + Replace(CheckUser__myuser, "'", "''") + "' AND Confirmed = TRUE"
CheckUser.CursorType = 0
CheckUser.CursorLocation = 2
CheckUser.LockType = 3
CheckUser.Open
CheckUser_numRows = 0
%> 

<% 
if checkUser.eof then
response.redirect"/_sec_/login.asp?error=Sorry%20That%20Username%20Is%20Not%20In%20Our%20Database%20"
End if

if checkUser("Username") = request("username") then
	if checkuser("mypass") = request("mypass") then
		response.cookies("skalman")("user-name") = checkuser("username")
		response.cookies("skalman")("full_name") = checkuser("Full_Name")
		response.cookies("skalman")("region") = checkuser("region")
		response.cookies("skalman")("distrikt") = checkuser("distrikt")
		Response.Cookies("skalman")("id") = checkuser("id")
		Response.Cookies("skalman")("grupp") = checkuser("grupp")	
		Response.Cookies("skalman")("email") = checkuser("email")
		Response.Cookies("skalman")("lang") = checkuser("lang")
		response.cookies("skalman")("user-logged") = "Yes" 
		response.cookies("skalman")("user-name").expires=dateadd("yyyy",10,now)

		if filewrite <> "" then %>
			<!--#include file ="filewrite.asp"---><%
		end if
		response.cookies("check-cookies")= "true"
		response.redirect"/default.asp"
		
		
	Else
		Response.redirect"/_sec_/login.asp?error=Sorry%20Your%20Password%20Was%20Wrong"
	End if 
End if%>
Medlem sedan aug. 2001203 inlägg
#4

såg ett fel som jag rättade till!

response.cookies("skalman")("user-name").expires=dateadd("yyyy",10,now)

tog bort user-name här, men nu kan jag inte logga in alls

rollo

264 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
127 ms — deklarationer (db)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)