| |||
![]() Buenos días a todos espero me puedan ayudar con lo siguiente, estoy diseñando una aplicativo web en php y mysql, lo que necesito hacer es ingresar a un modulo y ver que usuarios están logueados en el momento y si es posible desloguearlos, la verdad no se si toca hacer una comparación de sesiones activas o algo asi espero me puedan ayudar o almenos dar una idea, gracias de antemano. |
| ||||
Respuesta: Sesiones online Con SESIONES es bastante dificil y adicional a eso un error de seguridad impresionante ya que tendrias que dar acceso al archivo donde se almacenan todas las sesiones de los usuarios... session_save_path() en el apache. Acá te dejo como hacerlo con ese sistema pero te digo que es un problema de seguridad La otra forma es hacerlo con la base de datos almacenando la fecha y hora en la que el usuario inicio la sesión Acá esta el que utiliza la base de datos.
__________________ Por que existe gente que no agradece después de que se le ha brindado tiempo y ayuda ??? |
| ||||
Respuesta: Sesiones online Pero ya tienes el campo IP y todos los campos que el tutorial explica en tus tablas ???? no es solo cambiar la conexión a la base de datos.
__________________ Por que existe gente que no agradece después de que se le ha brindado tiempo y ayuda ??? |
| |||
Respuesta: Sesiones online si incluso ahi nos dan la sentencia sql para crear la tabla y sus campos, ya la cree en mi base de datos |
| ||||
Respuesta: Sesiones online muéstranos el código para ver como lo estas haciendo...
__________________ Por que existe gente que no agradece después de que se le ha brindado tiempo y ayuda ??? |
| |||
Respuesta: Sesiones online <? //////////////////////////////////////////// //USUARIOS ACTIVOS //Calcula el numero de usuarios activos //////////////////////////////////////////// function usuarios_activos() { //permitimos el uso de la variable portadora del numero ip en nuestra funcion global $REMOTE_ADDR; //asignamos un nombre memotecnico a la variable $ip = $REMOTE_ADDR; //definimos el momento actual $ahora = time(); include ("conexion.php"); //actualizamos la tabla //borrando los registros de las ip inactivas (24 minutos) $limite = $ahora-24*60; $ssql = "delete from control_ip where fecha < ".$limite; mysql_query($ssql); //miramos si el ip del visitante existe en nuestra tabla $ssql = "select ip, fecha from control_ip where ip = '$ip'"; $result = mysql_query($ssql); //si existe actualizamos el campo fecha if (mysql_num_rows($result) != 0) $ssql = "update control_ip set fecha = ".$ahora." where ip = '$ip'"; //si no existe insertamos el registro correspondiente a la nueva sesion else $ssql = "insert into control_ip (ip, fecha) values ('$ip', $ahora)"; //ejecutamos la sentencia sql mysql_query($ssql); //calculamos el numero de sesiones $ssql = "select ip from control_ip"; $result = mysql_query($ssql); $usuarios = mysql_num_rows($result); //liberamos memoria mysql_free_result($result); //devolvemos el resultado return $usuarios; } ?> |
| ||||
Respuesta: Sesiones online Y donde llamas la funcion ? sigue leyendo el tutorial... ahi te muestran como hacer un llamado a dicha funcion para que se ejecute.
__________________ Por que existe gente que no agradece después de que se le ha brindado tiempo y ayuda ??? |
| |||
Respuesta: Sesiones online Cita: la llamada de esta funcion $active_users = usuarios_activos(); se llama dentro de la función o afuera yo la realice asi pero me manda unos erroresfunction usuarios_activos() { include ("conexion.php"); //permitimos el uso de la variable portadora del numero ip en nuestra funcion global $REMOTE_ADDR; //asignamos un nombre memotecnico a la variable $ip = $REMOTE_ADDR; //definimos el momento actual $ahora = time(); //actualizamos la tabla //borrando los registros de las ip inactivas (24 minutos) $limite = $ahora-24*60; $ssql = "delete from control_ip where fecha < ".$limite; mysql_query($ssql); //miramos si el ip del visitante existe en nuestra tabla $ssql = "select ip, fecha from control_ip where ip = '$ip'"; $result = mysql_query($ssql); //si existe actualizamos el campo fecha if (mysql_num_rows($result) != 0) $ssql = "update control_ip set fecha = ".$ahora." where ip = '$ip'"; //si no existe insertamos el registro correspondiente a la nueva sesion else $ssql = "insert into control_ip (ip, fecha) values ('$ip', $ahora)"; //ejecutamos la sentencia sql mysql_query($ssql); //calculamos el numero de sesiones $ssql = "select ip from control_ip"; $result = mysql_query($ssql); $usuarios = mysql_num_rows($result); //liberamos memoria mysql_free_result($result); //devolvemos el resultado return $usuarios; } $active_users = usuarios_activos(); los errores que me aparecen son los siguientes Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in C:\xampp\htdocs\ping.php on line 24 Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in C:\xampp\htdocs\ping.php on line 24 Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in C:\xampp\htdocs\ping.php on line 28 Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in C:\xampp\htdocs\ping.php on line 28 Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\ping.php on line 31 Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in C:\xampp\htdocs\ping.php on line 36 Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in C:\xampp\htdocs\ping.php on line 36 Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in C:\xampp\htdocs\ping.php on line 40 Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in C:\xampp\htdocs\ping.php on line 40 Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\ping.php on line 41 Warning: mysql_free_result() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\ping.php on line 44 |
| ||||
Respuesta: Sesiones online el error que te da es de conexion a la base de datos Cita: especificamente en el mysql_connect, verifica bien que los parametros que le estas pasando a este sean correctos Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in C:\xampp\htdocs\ping.php on line 24 ![]()
__________________ aprende d tus errores e incrementa tu conocimientos it's not a bug, it's an undocumented feature By @David php the right way |
| |||
Respuesta: Sesiones online listo muchas gracias por su ayuda tenia un error en los parámetros ya me funciono gracias |
Etiquetas: |