tengo una tabla de sesiones donde almaceno la informacion relativa a las sesiones(ids, usuario, tiempodeinicio, tiempodefinal). Al entrar en la aplicacion todos esos datos se guardan en la tabla datos, luego lo que quiero es que tiempodefinal se me actualize en la base de datos, cada vez que haga un onUnLoad, pero claro la unica forma es hacerlo con un window.open y se me mostraria la ventanita aunque no mostrase nada por pantalla. Con Ajax se podria solucionar este problema??
De momento tengo este codigo:
ajax.js
Código PHP:
function MyAjax() {
var xmlhttp=false;
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
xmlhttp = false;
}
}
if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
}
function ClearHTML(sHTML) {
sHTML = sHTML.replace(/<[^>]*>/gi, "");
sHTML = sHTML.replace( /n/gi, "") ;
sHTML = sHTML.replace(/ /gi, "");
return sHTML;
}
Código PHP:
<?
session_start();
require_once("inc/functions.inc.php");
require_once("inc/sections.inc.php");
require_once("inc/conection.inc.php");
$Hoy=date("Y-m-d")." ".date("H:m:s");
$sql="update sesiones set session_destroy='".$Hoy."' WHERE session_id='".$_SESSION['IdSession']"'";
echo "<scrypt type='text/javascript'>alert('Ok');</script>";
mysql_query($sql);
session_destroy();
?>
Código PHP:
<html>
<head><script language="javascript" src="js/ajax.js" type="text/javascript"></script>
<script language="Javascript" type="text/javascript">
//Función para guardar tu informacion en bd utilizando ajax.
function cargarContenido()
{
var miAjaxObj = MyAjax();
miAjaxObj.open("GET","borrar_temp.php",true);
miAjaxObj.send(null);
alert("ejecutado");
}
</script></head>
<body onunload="cargarContenido();"></body>
</html>
Saludos