บางครั้ง server จะมีการปิดตัวแปร register_globals ทำให้เมื่อมีการเรียกใช้ตัวแปรเกิดปํญหา ตัวอย่างเช่น เราส่งตัวแปร $_GET['var'] แต่ตอนเรียกใช้ เราเรียกใช้เป็น $var
หรือกรณีที่ เราส่งตัวแปร $_POST['name'] แต่ตอนเรียกใช้ เราเรียกใช้เป็น $name หากตัวแปร register_globals เปิด ปัญหาก็จะไม่เกิดขั้น แต่กรณีตัวแปร register_globals ปิด ปัญหาก็จะเกิดคือ ตัวแปรที่เราเรียกใช้จะไม่มีค่าใดส่งเข้ามาเลย วิธีการแก้ปัญหาวิธีหนึ่งคือ การใช้ ค่ำสั่ง foreach ดังนี้
<?php
foreach($_POST as $key=>$value)
{
$$key=$value;
}
foreach($_GET as $key=>$value)
{
$$key=$value;
}
?>
แล้วเราก็ใช้ตัวแปรได้ตามปกติครับ
http://moshikub.com/วิธีแก้ปัญหาตัวแปร-global-off/








