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 > รบกวนด้วยค่ะ : มีปัญหาเรื่องการ login ค่ะ มันไม่ link ไปหน้าที่ต้องการให้ link ไปหน้าเดีวตลอดเลย



 

รบกวนด้วยค่ะ : มีปัญหาเรื่องการ login ค่ะ มันไม่ link ไปหน้าที่ต้องการให้ link ไปหน้าเดีวตลอดเลย

 



Topic : 029095



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



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




<?
$user=addslashes($_POST['username']);
$pass=addslashes($_POST['password']);
$conn=mysql_connect("localhost","root","1234");
mysql_select_db("projectt",$conn);
$sql= "SELECT*FROM teacher WHERE username ='$user' AND password ='$pass'";
$result= mysql_query($sql,$conn);
$num = mysql_num_rows($result);
$record=mysql_fetch_array($result);
if ($num<=0){
$msg="errorlogin";
header("Location: messageerror9.php?msg=$msg");
exit();
}else{
session_start();
$_SESSION["sess_ID"] = session_id();
$_SESSION["sess_username"] = $username;
if($record["status"]=="1"){
header("Location: admin.html");
}else if($record["status"]=="2"){
header("Location: staff.html");
}else if($record["status"]=="3"){
header("Location: teacher.html");
}else if($record["status"]=="4"){
header("Location: user.html");
}
}
mysql_close($conn);
?>

คือ ลองเอาโค้ดในเว็บไซต์นี้ไปลองปรับดู แต่มันกลับไม่ link ไปหน้าอื่นเลยนอกจากหน้า messageerror9.php
ก็เลยอยากจะสอบถามว่ามีข้อผิดพลาดตรงไหนค่ะ

รบกวนผู้รู้ให้คำชี้เเนะด้วย เพิ่งจะเรียนรู้ PHP ยังไม่ชำนาญค่ะ

***ตรงที่ SELECT*FROM teacher คือในที่นี้ select teacher แต่จริงๆแล้วไม่ใช้ใช้ตาาง teacher อย่างเดียว เลยอยากถามว่เราจะ select ตารางอย่างไรค่ะ ในที่นี้ใช้ตาราง admin staff teacher user ค่ะ




Tag : - - - -







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2009-07-11 12:42:17 By : numalee View : 945 Reply : 9
 

 

No. 1

Guest


ลองคอมเม้นบรรทัด header("Location: messageerror9.php?msg=$msg");

แล้ว $num ออกมาดูนะครับว่ามีข้อมูลที่ตรงกับเงื่อนไขที่ SELECT ไปรึเปล่า ถ้าไม่มีข้อมูลแสดงว่า CODE ที่ SELECT ผิด หรือเงื่อนไขไม่ตรง ดูจากโปรแกรมแล้วผมว่าน่าจะถูกแล้วนะครับ






Date : 2009-07-11 12:57:15 By : adaaugusta
 


 

No. 2



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



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


ขอบคุณมากค่ะ

ลองทำตามดูแล้ว ถ้าใช้ user ของ teacher login ก็จะสามารถเข้าได้ค่ะ
แต่ถ้าหากเป็น user อื่นที่นอกจาก teacher แล้วมันจะขึ้นหน้าว่างๆค่ะ
คิดว่าน่าจะมีปัญหาที่ select พอจะมีวิธีแก้มั้นค่ะ
Date : 2009-07-11 13:09:30 By : numalee
 

 

No. 3



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

สมาชิกที่ใส่เสื้อไทยครีเอท

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


รู้สึกว่าจะใช้ตารางเยอะไปนะครับ ทำไมไม่เอามารวมไว้ในตารางเดียวแล้วเพิ่มฟิลด์เก็บว่าเป็นระดับไหน

ไม่งั้นก้ต้อง select กันทั้ง 4 ตารางล่ะครับ
Date : 2009-07-11 13:35:28 By : lozomac
 


 

No. 4



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



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


คือไม่ชำนาญการใช้โค้ดค่ะ ยังไง ก็รบกวนช่วยแนะนำด้วย
ที่แยก 4 ตารางเพราะว่าแต่ละตารางจะมีข้อมูลของ user แต่ละประเภทอยู่ด้วย
ถ้าเอามารวมกัน ก็พูดง่ายๆว่าทำไม่เป็น (- -") อิอิ

ถ้าเกิดใช้ join พอจะแก้ปัญหานี้ไดมั้ยค่ะ
ถ้าได้ รบกวน ช่วยแนะนำด้วยค่ะ
ขอบคุณสำหรับทุกคำตอบน๊ะค่ะ
Date : 2009-07-11 13:45:50 By : numalee
 


 

No. 5



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

สมาชิกที่ใส่เสื้อไทยครีเอท

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


การ join จะใช้ได้ผล ก็ต่อเมื่อ ข้อมุลของแต่ล่ะตารางที่นำมา join มีความเกี่ยวเนื่องกัน
เช่น ตาราง A

ai | adata
1 | aaaa
2 | abab

ตาราง B
bi | ai | bdata
1 | 1 | zzzz
2 | 1 | fdfdd
3 | 2 | mnm

อย่างนี้จึงจะสามารถ ใช้ join ได้ครับ
กรณีของคุณ numalee ผมไม่ทราบข้อมูลของแต่ล่ะ user แต่ละ ตาราง เหมือนกันมั้ย ถ้าเหมือนกันก้สามารถทำอย่างที่ผมบอกไว้ข้างบนได้เลย คือ รวมเป้นตารางเดียวแล้วเพิ่มอีก 1 ฟิลด์ เพื่อแยกว่าเป็น user ประเภทไหน

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

หรือ ทางเลือกสุดท้าย คุณไม่ต้องการทำสิ่งที่บอกมาข้างต้น สิ่งที่ทำได้ คือ แยกส่วน login ของแต่ล่ะระดับออกจากกัน ครับ


Date : 2009-07-11 14:19:03 By : lozomac
 


 

No. 6

Guest


รวมเป็นตารางเดียวแล้วกำหนด levelให้กับแต่ละคนเอาอะครับน่าจะได้ และกำหนดให้แต่ละ level ว่ามีสิทธิ์อะไรบ้างอะ
Date : 2009-07-11 14:19:29 By : anu
 


 

No. 7



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



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


รบกวนคุณ a-mac อธิบายได้มั้ยค่ะ
คือโดยส่วนตัวแล้ว ไม่ค่อยมีพื้นฐานด้าน php ค่ะ
คือมันไม่เข้าใจ

ถ้าไม่รบกวนจนเกินไป

คือในแต่ละตารางจะมีฟิลคือ username และ password อยู่ทุกตาราง ส่วนนอกเหนือจากนั้นแต่ละตารางจะมีขอมูลอื่นที่เหมือนกันด้วย คือ status name email และ แต่ละตารางก็จะมี id ที่ปล่อยให้รันไปเอง
ในส่วนของตารางตรงนี้ไม่ได้สร้างข้อมูลมาเองแต่จะดึงข้อมูลมาใส่ซึ่งเป็นข้อมูลจริงๆซึ่งข้อมูลตรงนี้มีเยอะมากเพราะเป็นอาจารย์ในมหาลัย มันจะมีปัญหาเวลา admin จะเข้ามาตรวจสอบแก้ไข มั้ยค่ะ

ขอโทษด้วย เพราะ numalee ไม่เข้าใจจริง ไม่ถนัดเขียนโปรแกรม แต่ต้องทำส่งค่ะ

(*** มันเป็นงานใน Project จบค่ะ)
Date : 2009-07-11 14:38:27 By : numalee
 


 

No. 8

Guest


ผมว่าตอนนี้ยังไม่ถึง ขั้นตอนการโค้ดเลยนะครับ มันยังอยู่ที่ การนอร์มัลไลซ์ (Normalization ) ข้อมูลอยู่เลย
เอ๊ะ ใช่เหรอ มันเกี่ยวกันเหรอ

ใช่ครับมันเกี่ยวเนื่องกันหมดนั่นล่ะครับ ถ้าต้องทำงานกับฐานข้อมูลแล้วจัดการฐานข้อมูลไม่ดี เราก้จะทำงานได้ยาก อย่างที่คุณประสบอยู่

Quote:
คือในแต่ละตารางจะมีฟิลคือ username และ password อยู่ทุกตาราง ส่วนนอกเหนือจากนั้นแต่ละตารางจะมีขอมูลอื่นที่เหมือนกันด้วย คือ status name email และ แต่ละตารางก็จะมี id ที่ปล่อยให้รันไปเอง


โครงสร้างแต่ล่ะตารางเป็นยังงัยผมไม่รู้นะ แต่จากที่บอก ข้อมูลพวกนี้น่าจะอยู่ที่ตารางเดียวกัน คือ
Code

id ที่ปล่อยให้รันไปเอง, username, password, status, name, email

อีกสองที่ควรมีในกรณีนี้ คือ UID เก็บ ไอดีของแต่ล่ะ user และ UTable เก็บชื่อตารางที่เก็บแต่ล่ะ UID นั้นๆไว้ (เพราะคุณแยกข้อมูล user ไว้หลายตาราง)
ตอนนี้ตารางที่ได้คือ

Code

id ที่ปล่อยให้รันไปเอง, username, password, status, name, email, UID ,UTable


ที่นี้มาถึงส่วที่แยกว่าใครเป็นใครระดับไหน คือ UserLevel เก็บระดับการใช้งาน เช่น admin, staff, teacher ...

รวมของเก่า

Code

id ที่ปล่อยให้รันไปเอง, username, password, status, name, email, UID ,UTable, UserLevel


ตั้งชื่อตารางว่า LoginUser หรืออะไรก็ได้ตามใจคุณครับ
ตอนนี้น่าจะทำให้ระบบของคุณสามารถเช็คการเข้าระบบจากตารางเดียวได้แล้วครับ

ออ พิมพ์มาถึงตรงนี้พึ่งเจอว่า status คือฟิลด์เก็บระดับการใช้งาน งั้นก็เอา UserLevel ออกได้นะครับ

จากโค้ดเดิม ไม่ต้องแก้อะไร นอกจาก ชื่อตาราง ให้ใช้ตารางที่สร้างขึ้นมาใหม่นี้แทนครับ
เป็น



Code
$sql= "SELECT*FROM LoginUser WHERE username ='$user' AND password ='$pass'";



Date : 2009-07-11 15:36:10 By : lozomac
 


 

No. 9



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



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


เย้ๆ
ทำได้แล้วค่ะ

ขอบคุณมากๆ สำหรับคำตอบทุกคำตอบค่ะ


Date : 2009-07-11 22:17:44 By : numalee
 

   

ค้นหาข้อมูล


   
 

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