Ver Mensaje Individual
  #1 (permalink)  
Antiguo 25/01/2004, 08:39
Elig
 
Fecha de Ingreso: noviembre-2002
Ubicación: Elche
Mensajes: 548
Antigüedad: 22 años, 5 meses
Puntos: 0
Más complicado

Tabla de una Base de Datos

dos Campos : contador_activos_db ( numérico entero y clave principal), activos_db (nmérico entero)

La vamos a utilizar para controlar usuarios activos sin necesidad del Global.asa.

entramos en la página y en el body ... onload="sumar_activos();"

esto es...


function sumar_activos(){
<%

On Error Resume Next
Set Conexion = CreateObject("ADODB.Connection")
Conexion.Open="shiro"
strSQL = "SELECT * FROM activos WHERE contador_activos_db like 1 "
Set miConexion = Conexion.Execute(strSQL)


if miConexion("contador_activos_db")="null" then

miConexion.Close
Conexion.Close
Set miConexion = Nothing
Set Conexion = Nothing

On Error Resume Next
Set Conexion = CreateObject("ADODB.Connection")
Conexion.Open="shiro"

strSQL = "INSERT INTO activos (contador_activos_db, activos_db) VALUES ('1','1')"

Set miConexion = Conexion.Execute(strSQL)
activos=miConexion("activos_db")
%>
document.getElementById('contador_activos').innerH TML = '<% response.write activos %>';
<%
miConexion.Close
Conexion.Close
Set miConexion = Nothing
Set Conexion = Nothing
else

strSQL = "SELECT * FROM activos WHERE contador_activos_db like 1 "
Set miConexion = Conexion.Execute(strSQL)

acumular=miConexion("activos_db")
sumar = acumular + 1


strSQL = "UPDATE activos SET activos_db=" & sumar & " WHERE contador_activos_db=1"
Set miConexion = Conexion.Execute(strSQL)
activos=miConexion("activos_db")
%>
document.getElementById('contador_activos').innerH TML = '<% response.write activos %>';
<%
miConexion.Close
Conexion.Close
Set miConexion = Nothing
Set Conexion = Nothing
End If %>



}


He probado siete mil maneras... pero vamos, funciona va sumando y controlamos el tema... ahora bien

Le pongo en el body unload="restar_activos();"

con este código ...


function restar_activos(){

<%
On Error Resume Next
Set Conexion = CreateObject("ADODB.Connection")
Conexion.Open="shiro"
strSQL = "SELECT * FROM activos WHERE contador_activos_db like 1 "
Set miConexion = Conexion.Execute(strSQL)

restar=miConexion("activos_db") - 1
strSQL = "UPDATE activos SET activos_db=" & restar & " WHERE contador_activos_db=1"
Set miConexion = Conexion.Execute(strSQL)
miConexion.Close
Conexion.Close
Set miConexion = Nothing
Set Conexion = Nothing
%>


Y entonces cuando sumo no me graba...

Ya se que es un rollo pero llevo dos dias con lo mismo y no se donde puede estar el error.

He probado, incluso a hacerlo alrevés pero el resultado es el mismo.

saludos