PDA

View Full Version : ไม่เข้าใจเรื่อง user Authentication database



kenghockey
04-02-2010, 01:07 PM
คือว่าผมจะต้องการทํา ให้register เวลาเราสมัครสมาชิกหรือ member ให้ข้อมูลลงฐานข้อมูล ส่วนนี้ทําได้แล้วครับ แต่ที่ต้องการและสงสัยคือ แล้วถ้าผมทําlogin ออกมาแล้วจะเขียนโค๊ดยังไงให้มันไป check กับuser และpassกับ ที่ได้สมัครลงไปในฐานข้อมูลตอนที่เราทําการregis

และผ่านไปให้บอกสถานะ ว่าuseronline ส่วนใหญ่ผมเข้าเวปไหนตอนregis เสดก็เอารหัสไปlogin แล้วเข้าหน้า โชว์ว่าuserเรากําลังออนไลน์อยู่ ผมอยากได้ตรงนี้แหละครับเพราะทําโปรเจ๊ค

saknarak
06-02-2010, 11:08 AM
ง่ายมาครับ ก็ไป query ขึ้นมาโดยใช้เงื่อนไข user กับ password ที่รับมาจาก form

ตัวอย่าง


[hide=20]1. init.php โค้ดสำหรับตรวจสอบว่า login แล้วหรือยัง และอื่น ๆ ให้ include ลงไปในทุกหน้า
[code]<?php
session_start();

// check login
if (!defined(&#39;SKIP_AUTH&#39;)) {

sehanu
16-08-2010, 06:50 PM
ถ้าเป็นผมผมจะสร้าง colum ชื่อว่า status เพื่อเอาไว้เช็คดูว่า online อยู่หรือเปล่า เช่น ถ้าออนไลน์อยู่เป็็น 1 ไม่ออนไลน์เป็น 0 ประมาณนี้ครับ

เมื่อเราได้ฐานข้อมูลแล้วก็ทำการตรวจสอบการเข้าสู่ระบบโดยเมื่อกรอกฟอร์มแล้วให้เรานำค่าที่ได้ไป query โดยใช้ username แล้ว password เป็นเงื่อนไขครับถ้าค่าที่ออกมาเป็น 1 row แสดงว่า username และ password ถูกต้องครับ

เมื่อทำการตรวจสอบเสร็จแล้วก็สร้าง session หรือ cookie เพื่อไว้สำหรับตรวจสอบและแก้ status เป็น 1 เช่นเดียวกันถ้าออกจากระบบก็ให้เป็น 0 และลบ session และ cookie

จากการทำดังกล่าวปัญหาที่ตามมาคือถ้าผู้ใช้ปิด browser โดยที่ไม่ได้ออกจากระบบด้วยวิธีที่ถูกต้องจะทำให้เรามองว่าเป็นผู้ใช้ที่ออนไลน์อยู่ ตรงนี้มีวิธีแก้เยอะเลยครับ เราอาจจะตั้ง cron เพื่อตรวจสอบว่ามีใครที่ออไลน์อยู่บ้าง และถ้าไม่มีการเคลื่อนไหวเกินเวลาอาจจะให้เป็น 0 เพื่อแสดงว่าเป็นผู้ใช้ที่ไม่ออนไลน์ หรือจะให้มีการตรวจสอบเมื่อมีการขอดูผู้ใ้ช้ที่ออนไลน์ก็ได้ครับ