Foros del Web » Programando para Internet » PHP »

duda a eliminar usuarios con inactividad

Estas en el tema de duda a eliminar usuarios con inactividad en el foro de PHP en Foros del Web. hola a todos es que quiero poder hacer eliminar usuarios que tienen mas de 2 meses de inactividad como podria hacer esto posible...
  #1 (permalink)  
Antiguo 29/08/2012, 15:39
 
Fecha de Ingreso: junio-2012
Ubicación: En el Mundo
Mensajes: 766
Antigüedad: 12 años, 5 meses
Puntos: 10
duda a eliminar usuarios con inactividad

hola a todos es que quiero poder hacer eliminar usuarios que tienen mas de 2 meses de inactividad como podria hacer esto posible
  #2 (permalink)  
Antiguo 29/08/2012, 16:17
 
Fecha de Ingreso: junio-2012
Ubicación: En el Mundo
Mensajes: 766
Antigüedad: 12 años, 5 meses
Puntos: 10
Respuesta: duda a eliminar usuarios con inactividad

nose si estoy bien con este codigo

Código PHP:
Ver original
  1. $offlineDays = 90;  // Borrar cuentas con mas de esos dias sin conectarse.
  2.         mysql_query("DELETE FROM accounts WHERE expires < UNIX_TIMESTAMP() - ".$offlineDays."*24*60*60;") or sqlerror();

nose si estoy bien
  #3 (permalink)  
Antiguo 29/08/2012, 16:39
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 5 meses
Puntos: 1517
Respuesta: duda a eliminar usuarios con inactividad

Primero, recomiendo nunca, pero nunca borrar usuarios, más bien crea una columna adicional que los inactive. Segundo depende de como quieras lograrlo,
1 puede ser con PHP y verificar contra alguna columna que muestre la última vez que se logueo ó 2 con MySQL algo así puedes hacer
Código MySQL:
Ver original
  1. CREATE TABLE IF NOT EXISTS `test` (
  2.   `test_id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  3.   `status` int(1) NOT NULL DEFAULT '1',
  4.   `last_login` datetime NOT NULL,
  5.   PRIMARY KEY (`test_id`),
  6.   KEY `status` (`status`),
  7.   KEY `last_login` (`last_login`)
  8.  
  9. --
  10. -- Dumping data for table `test`
  11. --
  12.  
  13. INSERT INTO `test` (`test_id`, `status`, `last_login`) VALUES
  14. (1, 1, '2012-05-07 18:25:26'),
  15. (2, 1, '2012-08-21 18:25:53'),
  16. (3, 1, '2012-01-02 18:27:10');
  17.  
  18.  
  19. UPDATE `test` SET `status` = 0 WHERE UNIX_TIMESTAMP( `last_login` ) < ( UNIX_TIMESTAMP( ) - ( 60 *60 *24 *90 ) ) AND `status` = 1
Algo así... Eso modifica aquellos casos que no se han logueado en un periodo de más de 90 días.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #4 (permalink)  
Antiguo 29/08/2012, 17:13
 
Fecha de Ingreso: junio-2012
Ubicación: En el Mundo
Mensajes: 766
Antigüedad: 12 años, 5 meses
Puntos: 10
Respuesta: duda a eliminar usuarios con inactividad

no me funciona trato de poder hacer eliminar con php
  #5 (permalink)  
Antiguo 29/08/2012, 17:27
 
Fecha de Ingreso: junio-2012
Ubicación: En el Mundo
Mensajes: 766
Antigüedad: 12 años, 5 meses
Puntos: 10
Respuesta: duda a eliminar usuarios con inactividad

ya logre lo que queria aqui dejo la solucion

Código PHP:
Ver original
  1. $Days = 90;  // Borrar cuentas con mas de esos dias.
  2.         mysql_query("DELETE FROM accounts WHERE UNIX_TIMESTAMP(expires) < (UNIX_TIMESTAMP() - (60 *60 *24 *$Days))") or sqlerror();
  #6 (permalink)  
Antiguo 29/08/2012, 17:29
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 5 meses
Puntos: 1517
Respuesta: duda a eliminar usuarios con inactividad

Y despues se quejan que no pensaron en el por qué es importante no borrar
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #7 (permalink)  
Antiguo 29/08/2012, 17:35
 
Fecha de Ingreso: junio-2012
Ubicación: En el Mundo
Mensajes: 766
Antigüedad: 12 años, 5 meses
Puntos: 10
Respuesta: duda a eliminar usuarios con inactividad

ok y de que forma puedo enviarle un email de inactividad de 90 aviiandole un email
  #8 (permalink)  
Antiguo 29/08/2012, 17:39
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 5 meses
Puntos: 1517
Respuesta: duda a eliminar usuarios con inactividad

Al momento de ejecutar el código que actualizará la base de datos le envias tambien el email. Solo es cuestión de hacer un select antes de actualizar la base de datos y así tomas los datos de todos los usuarios que vas a inactivar.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos

Etiquetas: inactividad, usuarios
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 14:13.