ซ่อนพาแนล ให้แสดงเฉพาะสมาชิกเท่านั้น
ก็พอดีผมกำลังนั่งคิดว่าจะเขียนอะไรอยู่ แล้วพอดีว่าผมต้องเริ่มศึกษาการสร้างตัวเสริม (Infusion) อยู่พอดีเลย ก็เลยเกิดปิ๊งไอเดียขึ้นมาว่า ใช่แล้ว เรายังไม่ได้บอกสมาชิกเลยนี่นาว่าจะซ่อนเนื้อหายังไง แล้วผมก็คิดว่าการเขียนบทความเรื่องนี้ก็ไม่ได้ยากซะด้วยสิ ว่าแล้วก็มาเริ่มกันเลยดีกว่า
คือว่าระบบการซ่อนพาแนลเนี้ย มีพื้นฐานการทำงานคือ เราต้องสร้างพาแนลให้เสร็จก่อนและใช้งานได้ก่อนนะครับ แล้วเราจะเอาตัวแปรของระบบอีกตัวนึงเข้ามาใช้ครับ ซึ่งตัวแปรนี้จะถูกสร้างรอเอาไว้เมื่อผู้ใช้เรียกเว็บนั่นเองครับ หากว่าผู้ใช้งานเว็บเราไม่ได้ล้อคอินเป็นสมาชิกเนี่ยส่วนนี้ก็จะไม่สามารถ แสดงออกมาได้ เพราะเราใช้ฟังก์ชั่น if ในภาษา PHP มาช่วยเช็คตัวแปรตัวนี้ หากว่าผู้ใช้ไม่ได้ล็อคอิน ตัวแปรตัวนี้จะไม่มีค่าครับ(ค่าเป็น 0) งงมะ ค่อยๆ ทำความเข้าใจแล้วกันนะครับ มันเข้าเกี่ยวเรื่อง PHP อ่าครับ
เอาล่ะ เมื่ออธิบายการทำงานโดยคร่าวๆแล้วนะครับ ก่อนอื่นก็อย่างที่บอกครับ ให้สร้างพาแนลเอาไว้ก่อนครับ ให้ใช้งานได้เป็นปรกติก่อนนะครับ ไม่อย่างนั้นเดี๋ยวเขียนโค้ดผิดแล้วจะงงไปใหญ่ครับ?
เมื่อเราสร้างพาแนลใหม่แล้วนะครับ ในที่นี้ผมจะสมมุติว่าผมได้สร้างพาแนลดังนี้นะครับ
ชื่อพาแนล ทดสอบพาแนล
เนื้อหา
- opentable("ทดสอบการซ่อนและแสดงผล");
- echo " คุณเป็นสมาชิก";
- closetable();
ดังนั้น หากผมต้องการให้พาแนลนี้หายไป หากไม่ได้ล็อกอิน ก็ใส่เพิ่ม 2 บรรทัดดังนี้ครับ
เนื้อหา
- if (iMEMBER) {
- opentable("ทดสอบการซ่อนและแสดงผล");
- echo " คุณเป็นสมาชิก";
- closetable();
- }
?
คือเพิ่ม if(iMEMBER){ เนื้อหาข้างใน } มาครอบเอาไว้นั้นเองครับ
จบครับ อิๆๆๆๆ จะไปทำอะไรให้มันยุ่งยากมากมายครับ ก็บอกแล้วครับว่า PHP-Fusion มันใช้งานง่าย แก้ไขก็ง่าย หุๆๆๆ แล้วเว็บเราก็ทำให้มันง่ายด้วยคร้าบบ ไม่ต้องไปคิดไรมาก
แต่...... บางท่านอาจจะยังไม่พอใจเพียงเท่านั้น ดังนั้นหากท่านโทรเข้ามาภายใน 10 นาทีนี้ เอ้ย.... ว่ากันไป
ก็คือท่านที่รู้ภาษา php เนี่ย จะทราบว่า มันมีคำสั่ง if มันก็ต้องมี else (แต่ไม่จำเป็น) ดังนั้นหากท่านนำไปพัฒนาต่อก็จะได้ดังนี้ครับ
- if (iMEMBER) {
- opentable("ทดสอบการซ่อนและแสดงผล");
- echo " คุณเป็นสมาชิก";
- closetable();
- }else{
- opentable("ทดสอบการซ่อนและแสดงผล");
- echo " คุณไม่ได้เป็นสมาชิก";
- closetable();
- }
คือว่า ถ้าไม่ใช่สมาชิกหรือเป็นแอดมินหรือเป็น MOD ก็จะแสดงคำว่า คุณไม่ใช่สมาชิกออกมาครับ จบอีกแล้วครับ เห็นไหมครับ ว่ามันไม่ยากตรงไหนแต่อย่างใดเลย แล้วผมคิดว่าน่าจะนำไปประยุกต์ได้อย่างมากมายด้วยนะครับ แต่ที่ต้องระวังเอาไว้ให้ดีๆคือว่าทั้งหมดต้องเป็นภาษา PHP นะครับ แต่หากว่าใครต้องการผสม HTML เราก็จะเอาคำสั่งเปิดปิด PHP มาผสมใช้ดังนี้ครับ
- if (iMEMBER) {
- opentable("ทดสอบการซ่อนและแสดงผล");
- ?>
- <strong>คุณเป็นสมาชิก</strong>
- <?
- closetable();
- }else{
- opentable("ทดสอบการซ่อนและแสดงผล");
- ?>
- <strong>คุณไม่ใช่สมาชิก</strong>
- <?
- closetable();
- }
เอาล่ะครับ ง่ายๆตามเคยนั่นล่ะครับ เพียงแค่นี้ก็ซ่อนแสดงได้ตามใจแล้วครับ แต่ถ้าคุณคิดว่ามันมีแค่นี้ คุณคิดผิดครับ
เพราะว่าสำหรับตัวแปร iMEMBER เนี่ย มันคือการเช็คการล็อกอินว่าเป็นสมาชิกหรือไม่ แต่รู้หรือไม่ว่า หากคุณต้องการเช็คว่าเป็นแอดมินหรือไม่ ก็ให้เรียกใช้ตัวแปร iADMIN ได้เลยนะครับ ง่ายๆอีกแล้วครับงานนี้ แล้วผมก็จะเอาความรู้เรื่อง PHP มาผสมด้วย นั่นคือคำสั่ง elseif นั่นเองครับ
- if (iADMIN) {
- opentable("ทดสอบการซ่อนและแสดงผล");
- echo "คุณเป็นแอดมิน";
- closetable();
- }elseif (iMEMBER){
- opentable("ทดสอบการซ่อนและแสดงผล");
- echo "คุณเป็นสมาชิก";
- closetable();
- }else{
- opentable("ทดสอบการซ่อนและแสดงผล");
- echo "คุณไม่ได้เป็นสมาชิก";
- closetable();
- }
ซึ่งสรุปรวมทั้งหมด(ถือว่าพูดถึงการทำงาน PHP ในตัว) ของการทำงานนี้คือ เช็คค่าตัวแปรว่ามีหรือไม่ หากมี ให้ทำงานในคำสั่งด้านใน ไล่ๆลงมา ซึ่งมันจะทำงานเพียงเงื่อนไขที่ถูกต้องตามทีต้องการเท่านั้นครับ
จบกระบวนการจริงๆแล้วครับ หุๆๆ อันนี้สามารถไปประยุกต์ใช้ในเนื้อหาก็ได้นะครับ ไม่จำเป็นเลยว่ามันจะต้องเป็นแต่เพียงการสร้างพาแนลเท่านั้น ถ้าไม่เชื่อลองเอาไปใส่ในข้อความข่าวหรือบทความบางส่วนสิครับ ก็จะใช้งานได้เหมือนกันครับ
tag : php-fusion,hidden panel form user,check login , check right user
