Posts Tagged ‘ stripslashes

PHP : การใช้งาน stripslashes เมื่อต้องการ “\”

พอดีเจอปัญหาในการทำ Application ตัวหนึ่้งเวลากรอกข้อมูลจากหน้าเว็บ ที่เป็น ฟอร์ม แล้วมีการกรอกตัวอักษร ดังนี้ (อาจมีมากกว่านี้)

"", '', \ 

เวลารับค่าผ่าน การ $_POST หรือ $_GET ระบบจะใส่เครื่องหมาย “\” มาให้อัตโนมัติ จริงๆ เป็นเรื่องที่ดีัี แต่เวลาบันทึกลงฐานข้อมูลก็จะได้เครื่องหมาย “\” ไปด้วย พอดึงข้อมูลมาแสดง ก็จะแสดงไม่ถูกต้อง เช่นเรากรอกข้อมูล

I'm PHP I don't like "" and '' and \

จะถูกแปลงไปเป็น

I\'m PHP I don\'t like \"\" and \'\' and \\

ซึ่งตอนบันทึกก็จะทำการบันทึกข้อมูลแบบนี้ลงไปเลย แล้วเวลาดึงข้อมูลมาแสดงก็จะได้ ข้อมูลแบบนี้มาแสดง โดยเฉพาะถ้ามีการแก้ไข ข้อมูลก็จะยิ่งเติมเครื่องหมาย “\” เข้าไปอีก ตอนแรกจะแก้ปัญหาด้วย htmlentities หรือ htmlspecialchars แต่ว่าใช้ไม่ได้ผล ก็เลยลงเอยด้วย function stripslashes

ข้อมูลจาก
stripslashes
htmlentities
htmlspecialchars