แก้ปัญหา register_global ใน PHP เวอร์ชั่น 5.4.14
php.ini เวอร์ชั่น 5.4.14 ทำไม่มี ส่วนของ register_globals
แก้ปัญหา register_global ใน PHP เวอร์ชั่น 5.4.14
เนื่องจาก function นี้ค่อนข้างมีช่องโหว่มากมาย หรือจะเรียกได้ว่าไม่ค่อยปลอดภัย ดังนั้น ใน php version ใหม่จึงมีการปรับปรุงในส่วนนี้สำหรับเว็บไซต์ และระบบจัดการควรจะกำหนดให้คุณสมบัติของ register global เป็น off เพื่อความปลอดภัย แต่เมื่อในบ้างส่วน ที่ยังต้องการใช้ register global = on อยู่เพื่อที่จะได้ใช้ register global จึงนำวิธีมาฝาก
วิธีแก้
เอาโค้ดนี้ไปวางไว้ต้นไฟล์ทุกไฟล์ที่เรียกครับ
extract($_REQUEST, EXTR_OVERWRITE);
จะเป็นการแยกตัวแปรใน $_GET, $_POST, $_COOKIE ออกมาอยู่ใน global scope
วิธีนี้เป็นแค่วิธีแก้เบื้องต้น
ทางเรา<span font-size:14px"="">แนะนำให้ปรับโปรแกรมของคุณใหม่ ให้มันเป็นแบบทันสมัยดีกว่า ไหนๆก็จะใช้ PHP5.4 แล้ว