Foros del Web » Programando para Internet » PHP »

Es posible hacer logout e insertar en la base de datos

Estas en el tema de Es posible hacer logout e insertar en la base de datos en el foro de PHP en Foros del Web. Hola a todos esta es una pregunta quizá sencilla... pero más vale verificar con los expertos... tengo este código para cerrar sesión y funciona bien... ...
  #1 (permalink)  
Antiguo 16/01/2014, 19:15
Avatar de Briss  
Fecha de Ingreso: junio-2011
Mensajes: 1.293
Antigüedad: 13 años, 4 meses
Puntos: 12
Es posible hacer logout e insertar en la base de datos

Hola a todos esta es una pregunta quizá sencilla... pero más vale verificar con los expertos...

tengo este código para cerrar sesión y funciona bien... pero necesito tener en mi BD el registro del inicio y cierre de sesion
Código PHP:
<?php 
session_start
();
$_SESSION = array();
session_destroy();

header"Location: index.htm" );  

?>
Creo que no habria problema si agrego esto
$time= time();

echo date("h:i");


echo date("j/n/Y");


$id=$_SESSION['alumno'];
mysql_query("INSERT INTO REGISTRO SET hora='$time' WHERE EMPLEADO='$id' ",$conexion) or die (mysql_error());


ES CORRECTO O NO SÉ PUEDE????
  #2 (permalink)  
Antiguo 16/01/2014, 19:26
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Es posible hacer logout e insertar en la base de datos

Ajá... ¿Y lo probaste?

Lo primero que deberías hacer antes de preguntar "¿Se puede?" es intentarlo, ¿no te parece?
Si no te funciona, o no se puede o lo estás haciendo en el modo incorrecto, y si te funciona, problema resuelto.
Si no te funciona, pero te da un mensaje de error, entonces puedes postear lo que te devuelve y veremos cual es el problema.

Pero primer inténtalo.
Así es como se aprende: haciendo.

__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 16/01/2014, 19:46
Avatar de Briss  
Fecha de Ingreso: junio-2011
Mensajes: 1.293
Antigüedad: 13 años, 4 meses
Puntos: 12
Respuesta: Es posible hacer logout e insertar en la base de datos

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Ajá... ¿Y lo probaste?

Lo primero que deberías hacer antes de preguntar "¿Se puede?" es intentarlo, ¿no te parece?
Si no te funciona, o no se puede o lo estás haciendo en el modo incorrecto, y si te funciona, problema resuelto.
Si no te funciona, pero te da un mensaje de error, entonces puedes postear lo que te devuelve y veremos cual es el problema.

Pero primer inténtalo.
Así es como se aprende: haciendo.

Jeje cierto solo que no podia hacer la prueba y queria invertigar mas opciones si no se podia asi....
  #4 (permalink)  
Antiguo 16/01/2014, 20:38
 
Fecha de Ingreso: diciembre-2013
Mensajes: 81
Antigüedad: 10 años, 10 meses
Puntos: 1
Respuesta: Es posible hacer logout e insertar en la base de datos

yo cuando cerro sesion ocupo esto bien sencillo

<?php
session_start();
require_once('conexion.php');



$meter= @mysql_query('INSERT INTO logeo (usuario, accion) values ("'.mysql_real_escape_string($_SESSION['usuario']).'", "'.mysql_real_escape_string(salio).'")');
header("Refresh: 0; URL=http://localhost/4tanota/formulariodeingreso/salir2.php");

?>

y en salir2.php
pongo esto

<?php
session_start();
session_destroy();


?>
<SCRIPT LANGUAGE="javascript">
top.location.href = "../abrir.php";
</SCRIPT>

saludos : )
  #5 (permalink)  
Antiguo 17/01/2014, 09:16
Avatar de Briss  
Fecha de Ingreso: junio-2011
Mensajes: 1.293
Antigüedad: 13 años, 4 meses
Puntos: 12
Respuesta: Es posible hacer logout e insertar en la base de datos

Cita:
Iniciado por el__tamer Ver Mensaje
yo cuando cerro sesion ocupo esto bien sencillo

<?php
session_start();
require_once('conexion.php');



$meter= @mysql_query('INSERT INTO logeo (usuario, accion) values ("'.mysql_real_escape_string($_SESSION['usuario']).'", "'.mysql_real_escape_string(salio).'")');
header("Refresh: 0; URL=http://localhost/4tanota/formulariodeingreso/salir2.php");

?>

y en salir2.php
pongo esto

<?php
session_start();
session_destroy();


?>
<SCRIPT LANGUAGE="javascript">
top.location.href = "../abrir.php";
</SCRIPT>

saludos : )
Gracias el__tamer solo una pregunta mysql_real_escape_string(salio) salio supongo que es una variable con la fecha de cierre????
  #6 (permalink)  
Antiguo 18/01/2014, 13:15
 
Fecha de Ingreso: diciembre-2013
Mensajes: 81
Antigüedad: 10 años, 10 meses
Puntos: 1
Respuesta: Es posible hacer logout e insertar en la base de datos

ese mysql_real_escape_string(salio)
lo ocupo cuando el usuario cerra la sesion

tambien cuando inicia sesion
puedes poner ese codigo
por ejemplo
cuando pinche en el bonton ingresar se va a este codigo




<?php
session_start();
require_once('funciones.php');
conectar('localhost', 'root','', 'foro');

//Recibir
$usuario = strip_tags($_POST['usuario']);
$clave1 = strip_tags($_POST['clave1']);

$query = @mysql_query('SELECT * FROM registrar WHERE usuario="'.mysql_real_escape_string($usuario).'" AND clave1="'.mysql_real_escape_string($clave1).'"');
if($existe = @mysql_fetch_object($query))
{
$_SESSION['logged'] = 'yes';
$_SESSION['usuario'] = $usuario;
echo '<script>window.location="logeado.php"</script>';
$meter= @mysql_query('INSERT INTO logeo (usuario, accion) values ("'.mysql_real_escape_string($usuario).'", "'.mysql_real_escape_string(ingreso).'")');

}else{
echo 'El usuario y/o pass son incorrectos.';
}
?>

el mysql_real_escape_string(ingreso)
es cuando ingresa
puedes ocupar el mismo codigo cuando el usuairo modifica mm su correo y le cambias haci



<?php
require_once('funciones.php');
conectar('localhost', 'root','', 'foro');
session_start();



$correo = strip_tags($_POST['correo']);


$query = @mysql_query('SELECT * FROM registrar WHERE correo="'.mysql_real_escape_string($correo).'"');
if($existe = @mysql_fetch_object($query))
{
echo 'El correo '.$correo.' ya existe.';
return false;
}

else{
$meter = @mysql_query('UPDATE registrar SET correo="'.mysql_real_escape_string($correo).'" WHERE usuario="'.$_SESSION['usuario'].'"');
$meter2= @mysql_query('INSERT INTO logeo (usuario, accion) values ("'.mysql_real_escape_string($_SESSION['usuario']).'", "'.mysql_real_escape_string(cambiocorreo).'")' );

if(($meter)||($meter2))
{
echo 'Correo registrado con exito';
header("Refresh: 2; URL=http://localhost/4tanota/formulariodeingreso/perfil/cambiarcorreo/perfilcorreo.php");
echo 'Espere que cargue la base de datos';
}else{
echo 'Hubo un error en el registro.';
}
}
?>


saludos
  #7 (permalink)  
Antiguo 18/01/2014, 19:41
Avatar de SirDuque  
Fecha de Ingreso: febrero-2009
Ubicación: Paso del Rey, Buenos Aires, Argentina
Mensajes: 975
Antigüedad: 15 años, 9 meses
Puntos: 89
Respuesta: Es posible hacer logout e insertar en la base de datos

Tu código es valido, y no hay problema en insertar en MySql un registro al cerrar session. Tu problema va a ser cuando la session expire :D te va a faltar ese dato y vas a tener inconsistencias en tu registros.
__________________
Mono programando!
twitter.com/eguimariano
  #8 (permalink)  
Antiguo 18/01/2014, 19:45
 
Fecha de Ingreso: diciembre-2013
Mensajes: 81
Antigüedad: 10 años, 10 meses
Puntos: 1
Respuesta: Es posible hacer logout e insertar en la base de datos

Cita:
Iniciado por SirDuque Ver Mensaje
Tu código es valido, y no hay problema en insertar en MySql un registro al cerrar session. Tu problema va a ser cuando la session expire :D te va a faltar ese dato y vas a tener inconsistencias en tu registros.


expire? a que te refieres me das un ejemplo
puede servir para el futuro
  #9 (permalink)  
Antiguo 18/01/2014, 19:52
Avatar de SirDuque  
Fecha de Ingreso: febrero-2009
Ubicación: Paso del Rey, Buenos Aires, Argentina
Mensajes: 975
Antigüedad: 15 años, 9 meses
Puntos: 89
Respuesta: Es posible hacer logout e insertar en la base de datos

El usuario dejo la session abierta y cerro el navegador...
El usuario dejo el navegador abierto y se fue a fumar afuera por 40 minutos..
Etc.... miles de casos de uso que no suelen tener en cuenta al programar.

Recorda que los usuarios hace lo que quieren no lo que deben.
__________________
Mono programando!
twitter.com/eguimariano

Etiquetas: logout, mysql, posible, registro
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:08.