Public paste
Undefined
By: Guest | Date: May 26 2010 17:53 | Format: PHP | Expires: never | Size: 1.52 KB | Hits: 866

  1. ////////////////////////////////////////////////////////
  2. // Necia's code starting in 5, 4, 3, 2...
  3.  
  4. // Colectamos los datos que llegan al script
  5. $data = array();
  6. if ($_GET) $data = array_merge($data, $_GET);
  7. if ($_POST) $data = array_merge($data, $_POST);
  8.  
  9. $request->data = $data;
  10. $request->method = $_SERVER['REQUEST_METHOD'];
  11.  
  12. // Guarda el record de las acciones de usuario en base de datos
  13. function record($action, $data, $script = null, $admin_id = null) {
  14.  
  15.         $script ? $script : $script = $_SERVER['PHP_SELF'];
  16.         $admin_id ? $admin_id : $admin_id = $_SESSION['admin_id'];
  17.  
  18.         // Si data no vino como string, lo serializamos
  19.         $data = is_string($data) ? $data : serialize($data);
  20.  
  21.         $sql =
  22.                 "INSERT INTO
  23.                         main_records
  24.                 SET
  25.                         admin_id = '$admin_id',
  26.                         script = '$script',
  27.                         action = '$action',
  28.                         data = '$data'";
  29.                        
  30.         // Ejecuto la consulta. En caso de andar todo bien, devuelvo el id del nuevo record
  31.         if (mysql_query($sql)) return mysql_insert_id();
  32.         else return 0;
  33.  
  34. }
  35.  
  36. // Devuelve un array con los datos de los admins que estuvieron activos en los últimos 5 minutos.
  37. function get_online_admins() {
  38.  
  39.         $result = mysql_query(
  40.                 "SELECT
  41.                         main_records.*,
  42.                         main_admins.*
  43.                 FROM
  44.                         main_records,
  45.                         main_admins
  46.                 WHERE
  47.                         UNIX_TIMESTAMP(main_records.when) > UNIX_TIMESTAMP() - 300
  48.                         AND main_records.admin_id = main_admins.admin_id
  49.                 GROUP BY main_records.admin_id
  50.                 ORDER BY main_records.when DESC"
  51.         );
  52.        
  53.         while ($row = mysql_fetch_assoc($result)) $online[] = $row;
  54.  
  55.         return $online;
  56.        
  57. }