
29/01/2004, 20:03
|
| | Fecha de Ingreso: noviembre-2003
Mensajes: 343
Antigüedad: 21 años, 6 meses Puntos: 0 | |
Problema con Session que onda knijos
Miren tengo el siguiente codigo que me regitra visitas en mi sitio por fecha ok. este utiliza sesiones para evitar el agregar a la base de datos vitias no reales Ok.
Ahora el probmea que tengo es que son varias paginas a las que les deseo agregar el contador el problema es que si uno entra a la de noticias por asi decirlo pues se registr ala vistia y si el usario entra a otra seccion pues ya no se va a agregar nada porque ya voto en la otra. OK..
Como puedo crear variables para distintas sesiones?
o como puedo arreglar el desperfecto?
Se acpetan sugerencias..
Si necesitan algo toy en liena.. bye
<%
Sub Visita
'Añade una visita
Dim oConn, rs, SQL
Dim visitas
set oConn=Server.CreateObject("ADODB.Connection")
set rs=Server.CreateObject("ADODB.Recordset")
' Nos conectamos por OLEDB
oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="&Server.MapPath("Estadisticas.mdb")
' # es el delimitador para las Fechas en Access.
' Si vas a utilizar SQL Server, sustitúyelo por comilla simple (')
SQL="SELECT * FROM Noticias WHERE Fecha=#"&Date()&"#"
rs.Open SQL, oConn, 1, 2
if rs.EOF then
' Es la primera visita hoy, por eso no hay ningún
' registro con la fecha actual
rs.AddNew
rs.Fields("Fecha")=Date()
rs.Fields("Hits")=1
rs.Update
else
' Tengo que sumar 1 a los Hits de hoy
visitas=rs.Fields("Hits")
rs.Fields("Hits")=visitas+1
rs.Update
end if
'Cierro el Recordset y limpio la basura
rs.Close
oConn.Close
set rs=nothing
set oConn=nothing
end sub
%>
<%
' Si es una nueva visita, nuestra variable estará vacía.
if Session("Visitado")="" then
Session("Visitado")=False
end if
'Y ahora, miramos siempre esta variable antes de insertar
if not Session("Visitado") then
' Ponemos a verdadero
Session("Visitado")=True
' Llamamos a nuestro Sub para añadir la visita
Visita
end if
%>
__________________
La tecnología es un hecho objetivo, y el resultado está sujeto a la voluntad humana. |