Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1. <?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
  2. function _tulis_f($data, $file) {
  3.     /* fungsi untuk menulis file log, di file yang telah ditentukan */
  4.     $fp = fopen($file, 'a');
  5.     //buka file, dengan atribut "a", artinya jika file ada, maka data akan dituliskan di baris terakhir, tanpa menghapus isinya dulu
  6.     fwrite($fp, $data);
  7.     // tulis file
  8.     fclose($fp);
  9. }
  10.  
  11. function _buat_baru($user, $file) {
  12.     $CI         =& get_instance();
  13.     //ini untuk mengakses fungsi/helper/libraries bawaan CI, menggunakan get_instance()
  14.     $browser    = detect();
  15.     //buka fungsi detect() di bawah ini
  16.     $fp = fopen($file, "w");;
  17.     //buka file dengan atribut "w", cari sendiri artinya, ane agak lupa, gan :v :v
  18.     fwrite($fp, "Log akses dibuat untuk username : $user (pada ".date('d-m-Y h:i:s')."). IP : ".$CI->input->ip_address().", browser : ".$browser['name']." versi : ".$browser['version'].", OS : ".$browser['platform']."\r\n====================\r\n");
  19.     //tulis awalan/header log file
  20.     fclose($fp);
  21. }
  22.  
  23. function detect() {
  24.     /* fungsi untuk mendeteksi data-data dari user yang akan ditulis log-nya */
  25.    
  26.     $userAgent = strtolower($_SERVER['HTTP_USER_AGENT']);
  27.    
  28.     if (preg_match('/opera/', $userAgent)) {
  29.       $name = 'Opera';
  30.     } elseif (preg_match('/webkit/', $userAgent)) {
  31.       $name = 'Safari/Chrome';
  32.     } elseif (preg_match('/msie/', $userAgent)) {
  33.       $name = 'Internet Explorer';
  34.     } elseif (preg_match('/mozilla/', $userAgent) && !preg_match('/compatible/', $userAgent)) {
  35.       $name = 'Mozilla Firefox';
  36.     } else {
  37.       $name = 'unrecognized';
  38.     }
  39.  
  40.  
  41.     if (preg_match('/.+(?:fox|it|ra|ie)[\/: ]([\d.]+)/', $userAgent, $matches)) {
  42.       $version = $matches[1];
  43.     } else {
  44.       $version = 'unknown';
  45.     }
  46.  
  47.  
  48.     if (preg_match('/linux/', $userAgent)) {            
  49.         $platform = 'linux';        
  50.     } elseif (preg_match('/macintosh|mac os x/', $userAgent)) {            
  51.         $platform = 'mac';        
  52.     } elseif (preg_match('/NT 7.0/i', $userAgent)) {            
  53.         $platform = 'Windows 2010';        
  54.     } elseif (preg_match('/NT 6.1/i', $userAgent)) {            
  55.         $platform = 'Windows 7';        
  56.     } elseif (preg_match('/NT 6.0/i', $userAgent)) {            
  57.         $platform = 'Windows Vista';        
  58.     } elseif (preg_match('/NT 5.2/i', $userAgent)) {            
  59.         $platform = 'Windows Server 2003';        
  60.     } elseif (preg_match('/NT 5.1/i', $userAgent)) {            
  61.         $platform = 'Windows XP';        
  62.     } elseif (preg_match('/NT 5.0/i', $userAgent)) {            
  63.         $platform = 'Windows 2000';        
  64.     } else {            
  65.         $platform = '???';        
  66.     }
  67.  
  68.     return array(
  69.     'name' => $name,
  70.     'version' => $version,
  71.     'platform' => $platform,
  72.     'userAgent' => $userAgent
  73.     );
  74.  
  75. }