php-codeigniter-framework

ทำเว็บไซต์ ban คำหยาบ คำโฆษณา ด้วย codeigniter

ทำเว็บไซต์ ban คำหยาบ คำโฆษณา ด้วย codeigniter



ทำเว็บไซต์ ban คำหยาบ คำโฆษณา ด้วย codeigniter
ในขั้นตอนของการพัฒนาเว็บไซต์ที่ต้องมีการรับ input แบบข้อความจากสมาชิกเข้ามาแสดงผลผ่านหน้าเว็บไซต์ ตัวอย่างเช่นการสร้างกระทู้ การ comment เว็บไซต์จำเป็นต้องมีระบบกรองข้อมูล เพราะบางทีอาจจะมีการใส่ข้อความที่เป็นคำหยาบ หรือในอีกกรณีคือเพื่อป้องกันการ spam ข้อความที่เป็นโฆษณา ที่เว็บไซต์ไม่ต้องการให้แสดงบนหน้าเว็บ



ใน php codeigniter framework มีระบบที่ใช้สำหรับกรองข้อมูลให้เราสามารถใช้งานได้อยู่แล้ว โดยสามารถเรียกใช้โดยการโหลด helper ที่ชื่อว่า text โดยระบบนี้เราสามารถกำหนดคำที่เราไม่ต้องการให้แสดงบนหน้าเว็บไซต์ และสามารถแทนคำนั้น ๆ ด้วยข้อความใหม่ ไอคอน อีโมติคอน หรือรูปภาพก็ได้

วิธีใช้งาน text helper กรองคำที่ไม่ต้องการ

  • เปิดใช้งาน text helper โหลด helper ของ codeigniter ที่ construtor ของ controller ที่เราต้องการใช้งาน หรือเข้าไปกำหนดการโหลดแบบอัตโนมัติใน autoload.php
  • เรียกใช้งานฟังก์ชั่น word_censor ฟังก์ชั่น word_censor ต้องการพารามิเตอร์ 3 ส่วนคือ
    • $string พารามิเตอร์ตัวแรก คือข้อความที่เราต้องการตรวจสอบว่ามีคำหยาบหรือคำที่เราไม่ต้องการอยู่หรือไม่
    • $disallowed พารามิเตอร์ตัวที่สอง คือตัวแปร array ที่เก็บคำที่เราต้องการตรวจสอบพารามิเตอร์ตัวแรก
    • $replacement_word พารามิเตอร์ตัวสุดท้าย คือคำที่เราต้องการให้แทนที หากเจอคำที่ไม่เหมาะสมในรายการ
  • ตัวอย่างการใช้งาน word_censor
  • จากตัวอย่างโค๊ดด้านบน เราได้แทนทีคำในประโยค “What does shucks mean” ด้วยคำว่า “xxx” เพราะฉะนั้นตัวแปร $string สุดท้ายแล้วจะได้ผลลัพธ์เป็น

    จากตัวอย่างการกรอกคำด้านบนจะเป็นภาษาอังกฤษ แต่เมื่อนำไปใช้งานจริง เราสามารถใช้ภาษาไทยได้เหมือนกันนะครับ

ประยุกต์ใช้ text helper กรอกข้อความจากฐานข้อมูล

ในการใช้งานจริง เราอาจจะไม่กรอกข้อมูลในขั้นตอนของการบันทึกข้อมูลลงฐานข้อมูล แต่จะกรองข้อมูล เมื่อต้องทำการ query ข้อมูลมาแสดงบนหน้าเว็บไซต์ ก็สามารถทำได้เหมือนกันครับ ตัวอย่างเช่น

จากโค๊ดตัวอย่างด้านบนคือ เราได้สร้าง model_content เพื่อใช้ในการ query ข้อมูลจากฐานข้อมูล แทนที่จะใช้ข้อมูลที่เป็น static เพราะฉะนั้น เมื่อมีการเพิ่ม bad word เข้าไปในฐานข้อมูล หรือมีการสร้างกระทู้ใหม่ ๆ ระบบก็จะทำงานอัตโนมัติ และแบนคำที่ไม่เหมาะสมก่อนนำไปแสดงบนหน้าเว็บไซต์เสมอ


ตัวอย่าง model_content และการ query ทั้ง 2 เมธอด


กระทู้ใกล้เคียง

ทำเว็บไซต์ด้วย codeigniter การใช้งาน autoload... ทำเว็บไซต์ด้วย codeigniter การใช้งาน autoload ทำเว็บไซต์ด้วย codeigniter การใช้งาน autoload การทำ autoload ใน codeigniter นั้น หมายถึงการเปิดใช้...
สอน codeigniter ทำ url ให้สั้นและสวยด้วย _remap... สอน codeigniter ทำ url ให้สั้นและสวยด้วย _remap สอน codeigniter ทำ url ให้สั้นและสวยด้วย _remap จุดประสงค์หลักของการทำ Remapping Method Calls หรือ...
PHP Codeigniter เน้นใช้งาน : ตอน 2 รับส่งค่าระหว่า... PHP Codeigniter เน้นใช้งาน : ตอน 2 รับส่งค่าระหว่าง views และ controllers จากบทความที่แล้วเราได้ทำความเข้าใจเบื้องต้น ตั้งแต่การดาวน์โหลดไฟล์ จนถึง...
PHP Codeigniter เน้นใช้งาน : ตอน 1 ดาวน์โหลดและติด... PHP Codeigniter : ตอน 1 ดาวน์โหลดและติดตั้ง codeinginter PHP Codeigniter เป็น MVC framework ที่ได้รับความนิยมและใช้ในงานพัฒนาเว็บไซต์กันอย่างแพร่หล...