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

Registered : 109,027

HOME > PHP > PHP Forum > งงกับเรื่อง Session ของ PHP Codeigniter ทำไหมเรา Copy URL มันยังสามารถเข้าใช้งานได้เลยโดยไม่ต้องผ่านการล็อกอิน



 

งงกับเรื่อง Session ของ PHP Codeigniter ทำไหมเรา Copy URL มันยังสามารถเข้าใช้งานได้เลยโดยไม่ต้องผ่านการล็อกอิน

 



Topic : 068196



โพสกระทู้ ( 85 )
บทความ ( 0 )



สถานะออฟไลน์




คือว่า ลอง Copy URL แล้วมันยังสามารถเข้าใช้งานได้อยู่เลย ซึ่งจะเข้าใช้งานได้ต้องล็อกอินก่อน แต่นิไม่ต้องล็อกอินก้อเข้าใช้ได้ แต่นิไม่ทราบอ่ะค่ะว่าต้องกำหนดอะไรเพิ่มหรือเป่า ถ้าเรียก Session ให้แสดง ชื่อ User ว่าตอนนี้ใครกำลังเข้าใช้ระบบ สามารถเรียกดูได้ อันนี้ไม่ทราบจิงๆๆค่ะ อ่านคู่มือก้องงๆๆ ใครพอทราบช่วยชี้แนะหน่อยน่ะค่ะ ขอบคุณค่ะ



Tag : PHP







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2011-10-18 09:17:02 By : nidnoiiz View : 3795 Reply : 8
 

 

No. 1



โพสกระทู้ ( 4,706 )
บทความ ( 8 )



สถานะออฟไลน์


เอาโค้ดมาดูครับ

ถ้าใช้เป็น session ตอน log in ต้องส่งค่า session ให้ user

แล้วในหน้าต่างๆที่ต้องตรวจ log in ต้องเช็ค session ตลอด ไม่รู้ว่าทำตามนี้รึเปล่าครับ?
ถ้าทำ เมื่อปิดหน้าต่าง แล้วเปิดใหม่ตรงๆ มันจะเข้าไม่ได้ ต้องไป log in






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-10-18 09:25:54 By : mr.v
 


 

No. 2



โพสกระทู้ ( 85 )
บทความ ( 0 )



สถานะออฟไลน์


controller

Code
function index()
	{
		parent::Controller();
		$this->load->library('session');
			if (!$this->session->userdata('logged_in'))
			{
				 redirect('admin_all/login_form');
			}
			echo $this->session->userdata('logged_in');
	}
	
	function login_form()
	{			
		//echo "รหัสผ่านไม่ถูกต้อง";
		$this->load->view('login1');
	}

	function validate_credentials() // Check textbox  -------------------------User Login
	{		
		$this->load->model('admin_model');
		$query  =	$this->admin_model->validate();
		$query1 =   $this->admin_model->validate_user();

		if($query) 
		{
			$data = array(
				'u_name' => $this->input->post('u_name'),
				'is_logged_in' => true
			);
			$this->session->set_userdata($data);
			redirect('admin_all/load_user');

		}else if($query1){
			$data1 = array(
				'u_name' => $this->input->post('u_name'),
				'is_logged_in' => true
			);
			$this->session->set_userdata($data1);
			redirect('admin_all/load_page');

		}else{
				$this->index();
		}
	}
	



Model

Code
	function _construct(){
		parent::Model();
	}

	function validate()
	{
		$this->db->where('u_name',$this->input->post('u_name'));
		$this->db->where('p_word',md5($this->input->post('p_word')));
		$query = $this->db->get('tb_admin');
		
		if($query->num_rows == 1)
		{
			return true;
		}
		
	}

	function validate_user()
	{
		$this->db->where('u_name', $this->input->post('u_name'));
		$this->db->where('p_word', md5($this->input->post('p_word')));
		$query1 = $this->db->get('tb_user');
		
		if($query1->num_rows == 1)
		{
			return true;
		}
	}




view

Code
 <?php echo form_open(site_url('admin_all/validate_credentials'),array("name"=>"login","id"=>"login_form","onsubmit"=>"return chkFrm()")); ?>
						<tr bgcolor='#F5F5F5'>
							<td><IMG SRC="img/b_login.png" BORDER="0" ALT=""></td>
							
						</tr>
						<tr bgcolor='#F5F5F5'height='30'>
							<td></td>
							
						</tr>
						<tr bgcolor='#F5F5F5'>
							<td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ชื่อผู้ใช้งาน&nbsp;:&nbsp;&nbsp;<INPUT TYPE="text" NAME="u_name" size='18'></td>
							
						</tr>
						<tr bgcolor='#F5F5F5'height='8'>
							<td></td>
							
						</tr>
						<tr bgcolor='#F3F3F3'>
							<td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;รหัสผ่าน&nbsp;:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="password" NAME="p_word" size ='18'></td>
							
						</tr>
						
						<tr height ='80' bgcolor='#F3F3F3'>
							<td><INPUT TYPE="submit" value ='  ตกลง   '>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<INPUT TYPE="reset" value ='  ยกเลิก  '></td>
						</tr>
<?php echo form_close();?>	

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-10-18 11:37:31 By : nidnoiiz
 

 

No. 3



โพสกระทู้ ( 4,706 )
บทความ ( 8 )



สถานะออฟไลน์


$data = array(
'u_name' => $this->input->post('u_name'),
'is_logged_in' => true
);
$this->session->set_userdata($data);



if (!$this->session->userdata('logged_in'))
{
redirect('admin_all/login_form');
}
echo $this->session->userdata('logged_in');
}



ค่าไม่ตรงกัน
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-10-20 13:49:23 By : mr.v
 


 

No. 4



โพสกระทู้ ( 85 )
บทความ ( 0 )



สถานะออฟไลน์


เปลี่ยนแล้ว แต่ก้อยังไม่ได้อยู่เหมือนเดิมอ่ะค่ะ ช่วยดูให้ที่น่ะค่ะ

Code
function index()
	{
		parent::Controller();
		$this->load->library('session');
			if (!$this->session->userdata('logged_in'))
			{
				 redirect('admin_all/login_form');
			}
			echo $this->session->userdata('logged_in');
	}
	
	function login_form()
	{			
		//echo "รหัสผ่านไม่ถูกต้อง";
		$this->load->view('login1');
	}

	function validate_credentials() // Check textbox  -------------------------User Login
	{		
		$this->load->model('admin_model');
		$query  =	$this->admin_model->validate();
		$query1 =   $this->admin_model->validate_user();

		if($query) 
		{
			$data = array(
				'u_name' => $this->input->post('u_name'),
				'logged_in' => true
			);
			$this->session->set_userdata($data);
			redirect('admin_all/load_user');

		}else if($query1){
			$data1 = array(
				'u_name' => $this->input->post('u_name'),
				'logged_in' => true
			);
			$this->session->set_userdata($data1);
			redirect('admin_all/load_page');

		}else{
				$this->index();
		}
	}

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-10-24 10:37:14 By : nidnoiiz
 


 

No. 5



โพสกระทู้ ( 4,706 )
บทความ ( 8 )



สถานะออฟไลน์


ข้างใน function validate_credentials() ไม่มีการ load library เลย ผมก็แปลกใจว่าไม่มี error เลยเหรอครับเพราะเรียกใช้ $this->session โดยไม่มีโหลด library session เลย

แล้ว session การกำหนดค่าเป็น boolean ให้มันกำหนดได้หรือเปล่าผมก็ไม่แน่ใจอีก ทำไมไม่ลองกำหนดเป็น string ธรรมดาๆไปล่ะ? อย่างเช่น 'yes', 'no', 'true', 'false'
if ( $this->session->userdata("logged_in") == 'true' ) {...}


และ parent::Controller(); เข้าใจว่าเป็นของเวอร์ชั่นเก่า 1.7.x มันน่าจะอยู่ใน function ที่เป็น construct ของ php4
อย่างเช่น class home function home (ถ้าเป็น php5 ก็ class home function __construct) ประมาณนี้
แล้วทำไมมันมาอยู่ใน function index() ??


ประวัติการแก้ไข
2011-10-24 11:41:05
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-10-24 11:38:53 By : mr.v
 


 

No. 6



โพสกระทู้ ( 4,706 )
บทความ ( 8 )



สถานะออฟไลน์


Code (PHP)
class test_session extends CI_Controller {

	
	function __construct() {
		parent::__construct();
		$this->load->helper(array("url"));
	}
	
	
	function index() {
		$this->load->library("session");
		$this->session->set_userdata("logged_in", "data in session");
		echo "write session.<br />";
		echo anchor("test_session/check", "check session");
	}
	
	function check() {
		echo "check session page.<br />";
		$this->load->library("session");
		echo "[".$this->session->userdata("logged_in")."]<br />";
		echo anchor("test_session", "go back");
	}
	

}

ของ codeigniter 2.0+
ชื่อไฟล์ test_session.php สำหรับ controller
ลองเอาไปเทียบดูนะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-10-24 17:16:22 By : mr.v
 


 

No. 7



โพสกระทู้ ( 85 )
บทความ ( 0 )



สถานะออฟไลน์


ก้อยังทำไม่ได้อยู่ดีอ่ะค่ะ - -"
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-12-13 14:35:43 By : nidnoiiz
 


 

No. 8



โพสกระทู้ ( 4,706 )
บทความ ( 8 )



สถานะออฟไลน์


เอาโค้ดล่าสุดที่แก้มาครับ สองเดือนผ่านไปยังไม่ได้อีกหรือนี่?
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-12-13 16:02:06 By : mr.v
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : งงกับเรื่อง Session ของ PHP Codeigniter ทำไหมเรา Copy URL มันยังสามารถเข้าใช้งานได้เลยโดยไม่ต้องผ่านการล็อกอิน
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 04
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่