ممکن است در نصب برخی CMSها از شما خواسته شود که register_globals را فعال و یا غیرفعال کنید.
برای این کار، اگر به روت سرور و فایل php.ini دسترسی دارید که خیلی راحت آن فایل را باز کنید و این کد را پیدا کنید و مقدار مقابل آن را به on یا off تغییر دهید. کد:
register_globals =
اما موضوع این است که معمولاً شما یک مشتری روی سرور هستید و نه مدیر سرور. پس به فایل php.ini دسترسی ندارید.
در این صورت یکی از دو راه زیر را طی کنید، هر کدام جواب داد، از آن استفاده کنید:
1- فرض کنید میخواهیم این ماژول را غیرفعال کنیم: در روت سایت خود (یعنی در پوشه www یا public_html یا htdocs) یک فایل به نام و پسوند php.ini بسازید و کد زیر را داخل آن قرار دهید:
register_globals = off
برای فعال کردن، به جای off بنویسید on
2- اگر با روش بالا باز هم نتوانستید خطای مربوط به این ماژول را رفع کنید، در روت، یک فایل به نام htaccess. (نقطه در ابتدای htaccess است) بسازید و این عبارت را در آن بنویسید:
php_flag register_globals off
یکی از روشهای بالا باید مشکل شما را رفع کند.
نقل از سایت webdesign.org : یکی از مواردی که در برنامه نویسی PHP همواهر باید مد نظر قرار گیرد استفاده از register_globals میباشد. استفاده از این مورد به شما این امکان را میدهد تا به متغیرهایی فرمها و URL ها به شکل دیگری دسترسی داشته باشید. مثلا در یک URL به شکل file.php?var=foo بتوانید به متغیری به نام $var دسترسی داشته باشید.
متاسفانه برخی از برنامه نویسان نسبت به استفاده از این امکان چندان نظر مساعدی ندارند و ترجیح میدهند آن را در فایل php.ini غیرفعال سازند. البته دقت داشته باشید که این امکان به صورت پیش فرض در PHP 4.2.0 غیرفعال میباشد.
لذا این احتمال وجود دارد که کدی که شما مینویسید تحت برخی از وب سرورها جواب ندهد. و به همین دلیل ممکن است شما ترجیح دهید راحتی کاری که این امکان برای شما فراهم میکند را فراموش کرده و در عوض کدی بنویسید که اطمینان داشته باشید بر روی همه وب سرورها جواب میدهد!
از دید ما راه صحیح دسترسی به متغیرها از طریق آرایه مرتبطشان میباشد. مثلا در مثال بالا به جای استفاده از $var از $_GET['var'] استفاده نمایید و به همین شکل به جای استفاده از $HTTP_USER_AGENT عبارت $_SERVER['HTTP_USER_AGENT'] را به کار گیرید.
آرایه های اصلی عبارتند از $_GET, $_POST, $_COOKIE, $_SERVER که برحسب اینکه متغیرها از کجا می آیند نامگذاری شده اند.