loading...
Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
   
 

Registered : 102,428




HOME > บทความจากสมาชิก > Codeigniter ประยุกต์ใช้ Hooks กับการทำ User Online

Codeigniter ประยุกต์ใช้ Hooks กับการทำ User Online

 
 
       
Bookmark.   
Share
       
Codeigniter ประยุกต์ใช้ Hooks กับการทำ User Online Codeigniter 2.2.6 กับการประยุกต์ใช้ Hooks ในการทำ User Online โดยใช้ MySQL Database

Codeigniter 2.2.6

เริ่มจาก application/config.php
Code
$config['enable_hooks'] = TRUE;


application/hooks.php
Code (PHP)
<?php  if ( ! defined('BASEPATH')) exit('No direct script access allowed');
$hook['post_controller'] = array(
	'class'    => 'User_online',
	'function' => 'online',
	'filename' => 'User_online.php',
	'filepath' => 'hooks',
	'params' => ''
);
/*
pre_system ถูกเรียกตั้งแต่แรกเริ่มของการทำงานระบบ
pre_controller ถูกเรียกทันทีก่อนที่ตัวควบคุม (controller) ใดๆจะถูกเรียก
post_controller_constructor ถูกเรียกทันทีเมื่อ constructructor ทำงาน
post_controller ถูกเรียกทันทีเมื่อ controller ทำงานเสร็จสมบรูณ์
*/

/* End of file hooks.php */
/* Location: ./application/config/hooks.php */


application/hooks/hooks.php
Code (PHP)
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class User_online
{
	var $CI;
	function __construct()
    {
		$this->CI = & get_instance();
    }
	function online()
	{
		$timeoutseconds = 300;
		$timeout = time() - $timeoutseconds;
		$this->CI->db->query("DELETE FROM users_online WHERE last_activity < ".$timeout);
		$data = $this->CI->session->all_userdata();
		if (isset($data['username']))
		{
			$this->insert_data($data);
		}
	}
	function insert_data($data)
	{
		$array = array(
		   'uid' => $data['user_id'] ,
		   'username' => $data['username'] ,
		   'ip_address' => $data['ip_address'] ,
		   'session_id' => $data['session_id'] ,
		   'user_agent' => $data['user_agent'] ,
		   'last_activity' => time(),
			'uri' => $_SERVER['REQUEST_URI']
		);
		$count = $this->CI->db->where('uid', $data['user_id'])->from('users_online')->count_all_results();
		if ($count === 0)
		{
			$this->CI->db->insert('users_online', $array); 
		}
		else
		{
			$this->CI->db->update('users_online', array('last_activity' => time(), 'uri' => $_SERVER['REQUEST_URI']), array('uid' => $data['user_id'])); 
		}
	}
}

/* End of file users_online.php */
/* Location: ./application/hooks/user_online.php */


db.sql
Code (PHP)
CREATE TABLE IF NOT EXISTS `users_online` (
  `uid` int(11) NOT NULL,
  `username` varchar(50) NOT NULL,
  `ip_address` varchar(40) NOT NULL,
  `session_id` varchar(50) DEFAULT NULL,
  `user_agent` varchar(200) DEFAULT NULL,
  `last_activity` int(15) NOT NULL,
  `uri` varchar(250) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;


Reference : http://www.thaicreate.com/community/php-codeigniter-hooks-useronline.html
   
Share





  By : fossil
  Article : บทความเป็นการเขียนโดยสมาชิก หากมีปัญหาเรื่องลิขสิทธิ์ กรุณาแจ้งให้ทาง webmaster ทราบด้วยครับ
  Score Rating :
  Create Date : 2016-06-02
  Download : No files
Sponsored Links
 

Sponsored Links
พื้นฐาน Android Gestures Swipe/flip Sliding ตรวจสอบการ Sliding บนหน้าจอ
พื้นฐาน Android Gestures Swipe/flip Sliding ตรวจสอบการ Sliding บนหน้าจอ
ในการเขียน Application บน Smartphone สิ่งที่ขาดไม่ได้คือการตรวจสอบระบบ Touch Screen ซึ่งจะเป็น Event ที่ทำงานควบคู่ไปกับ Application ต่าง ๆ ที่พัฒนาขึ้น เพราะไม่ว่าจะเป็น iOS , Windows Phone หรือ Android
Rating : Update : 2013-05-29 15:22:59
Direct Admin Web Hosting (Control Panel) บทความเกี่ยวกับ Direct Admin
Direct Admin Web Hosting (Control Panel) บทความเกี่ยวกับ Direct Admin
บทความเกี่ยวกับ Direct Admin ซึ่งเป็น Web Control Panel เกี่ยวกับ Web Hosting เกี่ยวกับการใช้งาน คู่มือการใช้งาน
Rating : Update : 2013-08-09 21:34:44
ตอนที่ 2 SVN : ติดตั้ง VisualSVN Server เก็บ Version Control สร้าง Project และ User
ตอนที่ 2 SVN : ติดตั้ง VisualSVN Server เก็บ Version Control สร้าง Project และ User
ในการจะเริ่มใช้งาน SVN เพื่อจัดการกับ Version Control ของไฟล์ต่าง ๆ ที่สิ่งเราจะขาดไม่ได้เลยก็คือ แหล่งหรือคลัง (Storage) ที่จะทำหน้าที่จัดเก็บข้อมูลต่าง ๆ ทั้งหมด ซึ่งในส่วนนี้จะต้องมี Server มาเกี่ยวข้องแน่นอน แต่ในความหมายของ Server
Rating : Update : 2015-11-05 22:03:06
ตอนที่ 3 : ASP.Net เพื่อติดต่อกับฐานข้อมูล MySQL Database บน Azure
ตอนที่ 3 : ASP.Net เพื่อติดต่อกับฐานข้อมูล MySQL Database บน Azure
บน Web Site ของ Windows Azure เมื่อทการสร้าง Service Web Site เราสามารถที่จะสร้าง MySQL Database มาพร้อมกับ Web Site และสามารถเขียน Application ได้ทั้ง php , java และ asp.net
Rating : Update : 2013-05-16 09:34:38
iOS/iPhone Activity Indicator View and AlertView (UIAlertView / UIActivityIndicatorView)
iOS/iPhone Activity Indicator View and AlertView (UIAlertView / UIActivityIndicatorView)
ในการสร้าง Activity Indicator View ซึ่งเป็น Icons หมุ่น ๆ แสดง Progress ในขณะทำงาน เราสามารถใช้งานได้ง่าย ๆ ด้วยการสร้างจาก Object ของ
Rating : Update : 2014-11-17 15:26:20
DateTimePicker  ใน DataGridView C# จะพูดถึง การใช้  DateTimePicker ใน  DataGridView ผมใช้เป็นประจำ
DateTimePicker ใน DataGridView C# จะพูดถึง การใช้ DateTimePicker ใน DataGridView ผมใช้เป็นประจำ
พอดีอยากลองเขียนบทความแบบบ้านๆจากความรู้บ้านๆ ดูครับ บทความแรกนี้(จะมีต่อไปอีกเรอะ 555)จะพูดถึง การใช้ DateTimePicker ใน DataGridView
Rating : Update : 2015-09-27 12:16:11


Comunity Forum Free Web Script
Jobs Freelance Free Uploads
Free Web Hosting Free Tools

สอน PHP ผ่าน Youtube ฟรี
สอน Android การเขียนโปรแกรม Android
สอน Windows Phone การเขียนโปรแกรม Windows Phone 7 และ 8
สอน iOS การเขียนโปรแกรม iPhone, iPad
สอน Java การเขียนโปรแกรม ภาษา Java
สอน Java GUI การเขียนโปรแกรม ภาษา Java GUI
สอน JSP การเขียนโปรแกรม ภาษา Java
สอน Struts การเขียนโปรแกรม Java Struts Framework
สอน jQuery การเขียนโปรแกรม ภาษา jQuery
สอน Yii  Framework การเขียนโปรแกรม ภาษา PHP กับ Yii
สอน .Net การเขียนโปรแกรม ภาษา .Net

Free Tutorial
สอน Entity Framework
สอน Android
สอน Java เขียน Java
Java GUI Swing
สอน JSP (Web App)
iOS (iPhone,iPad)
Windows Phone
Windows Azure
Windows Store
Laravel Framework
Yii PHP Framework
สอน jQuery
สอน jQuery กับ Ajax
สอน PHP OOP (Vdo)
Ajax Tutorials
SQL Tutorials
สอน SQL (Part 2)
JavaScript Tutorial
Javascript Tips
Microsoft Access
MySQL Tutorials
-- Stored Procedure
MariaDB Database
SQL Server Tutorial
SQL Server 2005
SQL Server 2008
SQL Server 2012
-- Stored Procedure
Oracle Database
-- Stored Procedure
SVN (Subversion)
แนวทางการทำ SEO
ปรับแต่งเว็บให้โหลดเร็ว

สุดยอด Source Code V2.0
 

แจ้งชำระเงิน/โอนเงิน
 

Hit Link
   




Acc : thaicreate@hotmail.com






Load balance : Server 02
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2015 All Rights Reserved.
for Contact Us : [Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 , 084-715-5121 อัตราราคา คลิกที่นี่

Back to Top