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 > การใช้งาน captcha มีปัญหาเวลาเช็ค time()-7200 , php-codeigniter



 

การใช้งาน captcha มีปัญหาเวลาเช็ค time()-7200 , php-codeigniter

 



Topic : 111033



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



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




captcha time()

เก็บข้อมูลลงการสร้าง captcha ใน database

มี word, ip_address, time

แล้วตอนใช้งานก็ต้องเอาค่าที่กรอกจากฟอร์มไปเช็คกับข้อมูลใน database นั้น


มีปัญหาว่า time ใน database

กับ

time()-7200 ที่ต้องเอาไปเช็คมันไม่ตรงกัน


ตัวอย่างครับ

Code
$attr = array( 'img_path' => './captcha/', 'img_url' => base_url().'captcha/' ); $captcha = create_captcha($attr); #captchat created $this->captcha->_insert($captcha['time'], $this->input->ip_address(), $captcha['word']); #insert captcha attr to database already print_r($captcha); echo '<br>'; echo time()-7200; #นี่คือปัญหา




Tag : PHP, MySQL, CodeIgniter Framework







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2014-09-02 17:00:57 By : ginuwine72 View : 1040 Reply : 4
 

 

No. 1



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



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

Code (PHP)
# function floor(); ปัดทศนิยมออก
$this->captcha->_insert( floor($captcha['time']), $this->input->ip_address(), $captcha['word'] );

$checking = $this->db->where(.....)->get(....)->row_array();
if ( time() > $checking['time'] ) {
    # error
}


ปกติผมใช้ Session จำเอาอ่าคับ.. แหะๆ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-09-02 17:18:16 By : parsilver
 


 

No. 2



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



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


ทำไม captcha['time']
กับ
time()-7200

มันได้ค่าตัวเลขไม่ตรงกันล่ะครับ? แล้วจะตรวจสอบอย่างไรครับ?

* captcha['time'] มีค่า default expiration => 7200

ขอบคุณทุกคำตอบครับ
ขออนุญาตพื้นที่ไทยครีเอทครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-09-02 22:56:44 By : ginuwine72
 

 

No. 3



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



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


ลองเปลี่ยนจาก

-7200
เป็น
-(60*60*24)

มันช่วยได้ครับ
แต่..! ก็ยังหาสาเหตุไม่เจอ ว่าเป็นเพราะอะไร


ขอบคุณ oOPAOo
ขอบคุณพื้นที่ไทยครีเอทครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-09-07 19:33:11 By : ginuwine72
 


 

No. 4



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



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


ผมใช้แบบนี้

Code (PHP)
		$vals = array(
			'word' => rand_captcha(6),
			'img_path' => './captcha/',
			'img_url' => 'http://localhost/apps/captcha/',
			'font_path' => './assets/fonts/chunkfive-webfont.ttf',
			'img_width' => '150',
			'img_height' => 40,
			'expiration' => 900
		);

		$captcha = create_captcha($vals);
		$this->session->set_userdata('captchaWord', $captcha['word']);
		$data['captcha']=$captcha['image'];
		$this->load->view('captcha-view', $data);


'expiration' => 900
กำหนด expire ที่นี่ได้เลยเพื่อลบไฟล์รูปที่ Gen ออกมา

ส่วนตอน Veriry ก็

Code (PHP)
public function verify()
	{
		$this->load->library('form_validation');
		$this->form_validation->set_error_delimiters('<p class="error">', '</p>');
		$this->form_validation->set_rules('details', "Description", 'trim|required|xss_clean');
		$this->form_validation->set_rules('captcha', "Captcha", 'trim|required|callback_captcha_check');
		$userCaptcha = set_value('captcha');
		$word = $this->session->userdata('captchaWord');
		if($this->form_validation->run() == FALSE)
		{
			$this->test();
		}
		else
		{
			$this->session->unset_userdata('captchaWord');
			$data = array(
				'details' => $this->input->post('details', TRUE),
				'active' => 'Y',
				'ip' => $this->input->ip_address(),
				'create_by' => $this->sess['username']
			);

			$this->db->trans_begin();

			$this->db->set('created', 'NOW()', FALSE);
			$this->db->insert('mytable', $data);

			if ($this->db->trans_status() === FALSE)
			{
				$this->db->trans_rollback();
				$msg=notification('error', $this->db->last_query());
			}
			else
			{
				$this->db->trans_commit();
				$msg=notification('success', 'Insert Record has been successfully. # '.$this->db->affected_rows().' effected.');
			}
			$this->session->set_flashdata('message', $msg);
			redirect('captcha/index');
		}
	}

	function captcha_check()
	{
		if($this->input->post('captcha') != $this->session->userdata('captchaWord'))
		{
			$this->form_validation->set_message('captcha_check', 'Wrong captcha code!');
			return false;
		}
		return true;
   }

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-09-08 13:44:14 By : fossil31
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : การใช้งาน captcha มีปัญหาเวลาเช็ค time()-7200 , php-codeigniter
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 02
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 อัตราราคา คลิกที่นี่