ยินดีต้อนรับคุณ, บุคคลทั่วไป กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน

เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น

ThaiSEOBoard.comพัฒนาเว็บไซต์Programmingมีปัญหาเรื่อง session ครับ php
หน้า: [1]   ลงล่าง
พิมพ์
ผู้เขียน หัวข้อ: มีปัญหาเรื่อง session ครับ php  (อ่าน 3120 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
MinZaA
ก๊วนเสียว
*

พลังน้ำใจ: 15
ออฟไลน์ ออฟไลน์

กระทู้: 271



ดูรายละเอียด
« เมื่อ: 07 ธันวาคม 2013, 21:25:42 »

ไม่ทราบว่าใครพอมีตัวอย่าง session ที่แบ่งเป็น user / admin บ้างไหมครับ

อยากจะศึกษาต่อทำเป็นโปรเจค

ขอบคุณมากครับ

 wanwan017 wanwan017
บันทึกการเข้า

✔ ความพยายามอยู่ที่ไหน ความสำเร็จอยู่ที่นั่น
smapan
Global Moderator
เจ้าพ่อบอร์ดเสียว
*****

พลังน้ำใจ: 643
ออฟไลน์ ออฟไลน์

กระทู้: 8,269



ดูรายละเอียด เว็บไซต์
« ตอบ #1 เมื่อ: 07 ธันวาคม 2013, 21:32:06 »

 user และ admin ต่างกันยังไงครับ
บันทึกการเข้า

จูมล่าโฮส สยามโฮสเว็บ modty.com
รวมที่พัก เช่ารายวัน ที่พักเช่ารายเดือนมากที่สุดแจ่มจริง
***Tel 083-757-1515 ติดปัญหา Joomla ตรงไหนรับปรึกษาฟรี โทรมาเถอะครับ ถ้าตอบได้ช่วยแน่นอน ไม่มีกั้ก. ***
คนธรรมดา
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 138
ออฟไลน์ ออฟไลน์

กระทู้: 1,046



ดูรายละเอียด เว็บไซต์
« ตอบ #2 เมื่อ: 07 ธันวาคม 2013, 21:32:52 »

Dreamweaver ทำได้ครับ

บันทึกการเข้า

seonew
ก๊วนเสียว
*

พลังน้ำใจ: 26
ออฟไลน์ ออฟไลน์

กระทู้: 371



ดูรายละเอียด
« ตอบ #3 เมื่อ: 07 ธันวาคม 2013, 21:34:25 »

ประมาณนี้ป่าวครับ

โค๊ด:
$_SESSION['admin']="xxx";

$_SESSION['user']="xxx";

ไม่รู้ตอบตรงประเด็นป่าว  Tongue
บันทึกการเข้า
iLhay
Verified Seller
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 411
ออฟไลน์ ออฟไลน์

กระทู้: 4,366



ดูรายละเอียด เว็บไซต์
« ตอบ #4 เมื่อ: 07 ธันวาคม 2013, 21:38:36 »

$_SESSION['usertype'] = 'admin';

$_SESSION['usertype'] = 'user';
บันทึกการเข้า

Wordpress Hosting


Wordpress Hosting เริ่มต้นปีละ 790 บาท NVMe SSD เร็ว 9000MB/s เร็วกว่านี้ไม่มีอีกแล้ว
Cloud Server เริ่มต้นเพียงเดือนละ 159 บาท พร้อมใช้ภายใน 1 นาที ผ่านระบบอัตโนมัติมีทั้ง Linux / Windows / DirectAdmin
สอบถามข้อมูลและแจ้งปัญหา 02-105-4417 ตลอด 24 ชั่วโมง
MinZaA
ก๊วนเสียว
*

พลังน้ำใจ: 15
ออฟไลน์ ออฟไลน์

กระทู้: 271



ดูรายละเอียด
« ตอบ #5 เมื่อ: 07 ธันวาคม 2013, 21:40:58 »

$_SESSION['usertype'] = 'admin';

$_SESSION['usertype'] = 'user';

มีแนวการใช้งานไหมครับ ผมลองทำเองแล้วมันไม่ยอมแสดงผลตามอ่าครับท่าน
บันทึกการเข้า

✔ ความพยายามอยู่ที่ไหน ความสำเร็จอยู่ที่นั่น
MinZaA
ก๊วนเสียว
*

พลังน้ำใจ: 15
ออฟไลน์ ออฟไลน์

กระทู้: 271



ดูรายละเอียด
« ตอบ #6 เมื่อ: 07 ธันวาคม 2013, 21:41:49 »

ประมาณนี้ป่าวครับ

โค๊ด:
$_SESSION['admin']="xxx";

$_SESSION['user']="xxx";

ไม่รู้ตอบตรงประเด็นป่าว  Tongue

ใช่ครับ ประมานแนวนี้เลยครับ  Cry Cry

ยังไปต่อไม่ถูกครับ ทางตันสนิท  wanwan031
บันทึกการเข้า

✔ ความพยายามอยู่ที่ไหน ความสำเร็จอยู่ที่นั่น
seonew
ก๊วนเสียว
*

พลังน้ำใจ: 26
ออฟไลน์ ออฟไลน์

กระทู้: 371



ดูรายละเอียด
« ตอบ #7 เมื่อ: 07 ธันวาคม 2013, 21:58:42 »

ประมาณนี้ป่าวครับ

โค๊ด:
$_SESSION['admin']="xxx";

$_SESSION['user']="xxx";

ไม่รู้ตอบตรงประเด็นป่าว  Tongue

ใช่ครับ ประมานแนวนี้เลยครับ  Cry Cry

ยังไปต่อไม่ถูกครับ ทางตันสนิท  wanwan031

หลักการก็คล้ายๆตัวแปรแหละครับ ลองเอา code ที่ติดมาช่วยกันดูดีกว่าคับ  แบบนี้งงไม่รู้จะตอบตรงไหนดี  Tongue
บันทึกการเข้า
max30012540
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 196
ออฟไลน์ ออฟไลน์

กระทู้: 1,307



ดูรายละเอียด
« ตอบ #8 เมื่อ: 07 ธันวาคม 2013, 22:07:26 »

หน้าผู้ใช้งาน กับหน้าผู้ดูแล ใช้ session_start(); ให้ต่างกันก็พอครับ Embarrassed
โค๊ด:
session_start("admin"); # สำหรับหน้าเกี่ยวกับผู้ดูแล
session_start("user"); # สำหรับหน้าเกี่ยวกับผู้ใช้งาน
อ้างถึง
hxxp://www.php.net/session_start
บันทึกการเข้า
ossytong
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 138
ออฟไลน์ ออฟไลน์

กระทู้: 1,149



ดูรายละเอียด
« ตอบ #9 เมื่อ: 07 ธันวาคม 2013, 22:08:01 »

ก่อนใช้ seession var

อย่ายืมเอา <?php session_start(); ?> 

ไปไว้บนสุดของ ไฟล์ก่อนนะครับ

ชอบลืมกันบ่อย แล้วเจอปัญหาใช้ตัวแปร SESSION ไม่ได้
บันทึกการเข้า
SL_master
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 57
ออฟไลน์ ออฟไลน์

กระทู้: 1,188



ดูรายละเอียด เว็บไซต์
« ตอบ #10 เมื่อ: 07 ธันวาคม 2013, 22:10:01 »

ไม่แน่ใจว่าคำถามหมายถึงอะไร
แต่น่าจะหมายถึง การ login ที่แบ่งแยก ระหว่าง admin กับ user

ส่วนใหญ่เค้าจะแบ่งกันใน database ก่อนแล้ว จึงมาแจงใน session อีกที

เวลาเราตั้ง เกี่ยวกับ user/admin ก็จัดไปใน ตัวเดียวกัน
$_SESSION['user_id'] = 'id ที่ตั้งไว้ให้user'; // ส่วนนี้เอาไว้เรียกใช้งาน ดึงผลของ user ออกมา

//แต่ถ้าต้องการ แบ่งแยกความเป็น admin ก็แบ่งออกมาเป็น session อีกตัว
//ตั้งชื่อว่า admin
$_SESSION['admin'] = '1';

แล้วใช้หลักการแยก if else

if($_SESSION['admin'] =='1'Wink{ส่วนนี้ก็เปิดเป็นระบบ admin ไว้}

//ในส่วนนี้ ใช้ได้หลาบแบบ ==0 , <1 , empty()
if($_SESSION['admin'] == ''Wink{ส่วนนี้ก็เปิดเป็นระบบ member ธรรมดา ไว้}


หรือให้ expert ไปกว่านั้น
แยก
//admin
$_SESSION['admin'] = '1';

//mod
$_SESSION['admin'] = '2';

//member
$_SESSION['admin'] = '0';

แล้วแต่จะดัดแปลงใช้



ก่อนใช้ seession var

อย่ายืมเอา <?php session_start(); ?> 

ไปไว้บนสุดของ ไฟล์ก่อนนะครับ

ชอบลืมกันบ่อย แล้วเจอปัญหาใช้ตัวแปร SESSION ไม่ได้
ครับสำคัญ อย่าลืม หรือกลัวมันจะbug ให้ใส่เป็น
@session_start(); แทน
บันทึกการเข้า

[M]-ammothz
คนรักเสียว
*

พลังน้ำใจ: 28
ออฟไลน์ ออฟไลน์

กระทู้: 135



ดูรายละเอียด เว็บไซต์
« ตอบ #11 เมื่อ: 07 ธันวาคม 2013, 22:13:43 »

$_SESSION['usertype'] = 'admin';

$_SESSION['usertype'] = 'user';
wanwan016 ตามนี้นะครับ ง่ายดี
บันทึกการเข้า
icez
Verified Seller
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 296
ออฟไลน์ ออฟไลน์

กระทู้: 2,876



ดูรายละเอียด
« ตอบ #12 เมื่อ: 07 ธันวาคม 2013, 22:28:14 »

ครับสำคัญ อย่าลืม หรือกลัวมันจะbug ให้ใส่เป็น
@session_start(); แทน

อย่าใส่ @ นำหน้าครับ มันจะทำให้ไม่แสดง error
เวลามัน error เราจะไม่รู้ว่ามันมีปัญหา ทำให้หาสาเหตุยากครับ
บันทึกการเข้า

THZHost SSD Hosting ไทย/สิงคโปร์ พร้อม firewall ป้องกันการยิงเว็บ + scan ไวรัสในเว็บ
sbaydee
Verified Seller
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 337
ออฟไลน์ ออฟไลน์

กระทู้: 1,622



ดูรายละเอียด
« ตอบ #13 เมื่อ: 07 ธันวาคม 2013, 22:33:00 »

ครับสำคัญ อย่าลืม หรือกลัวมันจะbug ให้ใส่เป็น
@session_start(); แทน

อย่าใส่ @ นำหน้าครับ มันจะทำให้ไม่แสดง error
เวลามัน error เราจะไม่รู้ว่ามันมีปัญหา ทำให้หาสาเหตุยากครับ
Tongue
อันนี้แนะนำครับ
ตอนแรกๆผมก็เจอ error session หาสาเหตุไม่เจอ
ที่ไหนได้ ไฟล์ encode เป็น utf8+bom ซะงั้น
จขกท ถ้าเกิดเจอปัญหา session error แนะนำให้ใช้ editplus encode เป็น utf8 นะครับ
บันทึกการเข้า
phaishow
คนรักเสียว
*

พลังน้ำใจ: 11
ออฟไลน์ ออฟไลน์

กระทู้: 151



ดูรายละเอียด
« ตอบ #14 เมื่อ: 08 ธันวาคม 2013, 01:31:39 »

สำหรับผม @session_start(); ไม่ผิด แต่ก็ไม่แนะนำครับ ควรใช้ในกรณีที่เกิดปัญหาและรู้ว่าปัญหาเกิดจากอะไรครับ
บันทึกการเข้า

รู้หลบเป็นปีก รู้หลีกเป็นหาง .. รู้ทุกอย่าง เป็นไปไม่ได้
---
รับเขียนโปรแกรม php ทุกรูปแบบ
รับเขียนโปรแกรม desktop pc ด้วยภาษา php,html,javascript
สนใจ/คุยรายละเอียด PM ได้เลยครับ
MinZaA
ก๊วนเสียว
*

พลังน้ำใจ: 15
ออฟไลน์ ออฟไลน์

กระทู้: 271



ดูรายละเอียด
« ตอบ #15 เมื่อ: 09 ธันวาคม 2013, 21:25:56 »

ขอบคุณทุกท่านมากนะครับ ตอนนี้ใช้งานได้แล้ว
แต่เจออีก 1 ปัญหาครับ


พอ Login เสร็จ สามารถแยก User กับ admin ได้แล้ว แต่ปัญหาที่เจอนี้คือ
ถ้าเรากลับไปหน้า Login อีกครั้ง มันก็ต้องใส่ username กับ password ใหม่อ่ะครับ
ไม่ทราบว่าต้องทำยังไงครับ ให้มันสามารถ redirect กลับไปหน้าเดิม เช่น ถ้า admin กด index ก็ให้กลับไปหน้า admin หน้าเดิม และ user ก็เหมือนกันครับ

 Tongue Tongue Tongue

ผมกลัวหลายท่านงง คือประมานนี้อ่ะครับ

ตอนนี้อยู่หน้าใส่ username คือ index.php

id : admin / pass : 1234
ถ้าเปนของ user
 id : user / pass : 1234

ผม login ไปเป็น admin ตอนนี้หน้า Link อยู่ที่ admin.php หรือ user.php
แต่พอผมเข้า index.php ใหม่ จะทำยังไงให้มันไปที่หน้า admin.php หรือ user.php กลับหน้าเดิมอ่ะครับ
จะมีใครเข้าใจผมไหมนะ  wanwan031 wanwan031
บันทึกการเข้า

✔ ความพยายามอยู่ที่ไหน ความสำเร็จอยู่ที่นั่น
iLhay
Verified Seller
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 411
ออฟไลน์ ออฟไลน์

กระทู้: 4,366



ดูรายละเอียด เว็บไซต์
« ตอบ #16 เมื่อ: 09 ธันวาคม 2013, 21:27:23 »

cookies
บันทึกการเข้า

Wordpress Hosting


Wordpress Hosting เริ่มต้นปีละ 790 บาท NVMe SSD เร็ว 9000MB/s เร็วกว่านี้ไม่มีอีกแล้ว
Cloud Server เริ่มต้นเพียงเดือนละ 159 บาท พร้อมใช้ภายใน 1 นาที ผ่านระบบอัตโนมัติมีทั้ง Linux / Windows / DirectAdmin
สอบถามข้อมูลและแจ้งปัญหา 02-105-4417 ตลอด 24 ชั่วโมง
MinZaA
ก๊วนเสียว
*

พลังน้ำใจ: 15
ออฟไลน์ ออฟไลน์

กระทู้: 271



ดูรายละเอียด
« ตอบ #17 เมื่อ: 09 ธันวาคม 2013, 21:32:41 »

cookies

แบบ session ทำไม่ได้หรอครับท่าน  Cry Cry
บันทึกการเข้า

✔ ความพยายามอยู่ที่ไหน ความสำเร็จอยู่ที่นั่น
smapan
Global Moderator
เจ้าพ่อบอร์ดเสียว
*****

พลังน้ำใจ: 643
ออฟไลน์ ออฟไลน์

กระทู้: 8,269



ดูรายละเอียด เว็บไซต์
« ตอบ #18 เมื่อ: 09 ธันวาคม 2013, 21:37:56 »

cookies

แบบ session ทำไม่ได้หรอครับท่าน  Cry Cry

sesion เก็บที่ server ปลอดภัย
cookies เก็บที่ Client ไม่ปลอดภัย
ใช้ได้เหมือนกัน

ที่ถามว่าจะกลับยังไง ก่อนออกจากหน้านั้น ก็สร้างตัวแปลขึ้นมาชื่อ $returnpage = curPageURL();
พอเสร็จกิจก็สั่ง ให้ไปที่หน้าที่ต้องการ

โดย ฟังชั่นนี้จะ return URL หน้าปัจจุบันออกมา
โค๊ด:
<?php
function curPageURL() {
 
$pageURL 'http';
 if (
$_SERVER["HTTPS"] == "on") {$pageURL .= "s";}
 
$pageURL .= "://";
 if (
$_SERVER["SERVER_PORT"] != "80") {
  
$pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
 } else {
  
$pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
 }
 return 
$pageURL;
}
?>
อ้างถึง
บันทึกการเข้า

จูมล่าโฮส สยามโฮสเว็บ modty.com
รวมที่พัก เช่ารายวัน ที่พักเช่ารายเดือนมากที่สุดแจ่มจริง
***Tel 083-757-1515 ติดปัญหา Joomla ตรงไหนรับปรึกษาฟรี โทรมาเถอะครับ ถ้าตอบได้ช่วยแน่นอน ไม่มีกั้ก. ***
iLhay
Verified Seller
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 411
ออฟไลน์ ออฟไลน์

กระทู้: 4,366



ดูรายละเอียด เว็บไซต์
« ตอบ #19 เมื่อ: 09 ธันวาคม 2013, 21:43:46 »

คือมันก็เรื่องที่ต้องรู้ฮะ

วิธีการเช็ค เอ่อ ก็เช็คว่ามี session ไหม มีก็ ตรวจว่าเป็นอะไร ก็ไปเรียกเมนูหน้านั้นมา

ถ้าไม่มี ก็แปลว่ายังไม่ได้ลอคอิน ก็เรียกหน้าปกติ
บันทึกการเข้า

Wordpress Hosting


Wordpress Hosting เริ่มต้นปีละ 790 บาท NVMe SSD เร็ว 9000MB/s เร็วกว่านี้ไม่มีอีกแล้ว
Cloud Server เริ่มต้นเพียงเดือนละ 159 บาท พร้อมใช้ภายใน 1 นาที ผ่านระบบอัตโนมัติมีทั้ง Linux / Windows / DirectAdmin
สอบถามข้อมูลและแจ้งปัญหา 02-105-4417 ตลอด 24 ชั่วโมง
หน้า: [1]   ขึ้นบน
พิมพ์