بهینه سرور

خانه / آموزش ها / آموزش فعال سازی Register_Globals در هاست

آموزش فعال سازی Register_Globals در هاست

یکی از مواردی که در برنامه نویسی PHP همواهر باید مد نظر قرار گیرد استفاده از register_globals میباشد.

استفاده از این مورد به شما این امکان را میدهد تا به متغیرهایی فرمها و URL ها به شکل دیگری دسترسی داشته باشید.

مثلا در یک URL به شکل file.php?var=foo بتوانید به متغیری به نام $var دسترسی داشته باشید.

متاسفانه برخی از برنامه نویسان نسبت به استفاده از این امکان چندان نظر مساعدی ندارند و ترجیح میدهند آن را در فایل php.ini غیرفعال سازند.

البته دقت داشته باشید که این امکان به صورت پیش فرض در PHP ۴,۲.۰ غیرفعال میباشد.

لذا این احتمال وجود دارد که کدی که شما مینویسید تحت برخی از وب سرورها جواب ندهد.

و به همین دلیل ممکن است شما ترجیح دهید راحتی کاری که این امکان برای شما فراهم میکند را فراموش کرده و در عوض کدی بنویسید که اطمینان داشته باشید بر روی همه وب سرورها جواب میدهد!

از دید ما راه صحیح دسترسی به متغیرها از طریق آرایه مرتبطشان می*باشد.

مثلا در مثال بالا به جای استفاده از $var از $_GET[‘var’] استفاده نمایید و به همین شکل به جای استفاده از $HTTP_USER_AGENT عبارت $_SERVER[‘HTTP_USER_AGENT’] را به کار گیرید.

آرایه های اصلی عبارتند از $_GET, $_POST, $_COOKIE, $_SERVER که برحسب اینکه متغیرها از کجا می آیند نامگذاری شده اند.

این تابع به دلیل موارد امنیتی به صورت پیش فرض در سرور و تنطیمات PHP غیر فعال است، برای فعال کردن این تابع مراحل زیر را انجام دهید :

در کامپیوتر شخصی خود  یک فایل با نام PHP.INI توسط برنامه NotePad ایجاد کنید

و کد زیر را داخل این فایل قرار دهید

register_globals = On

سپس فایل PHP.INI ایجاد شده حاوی کد بالا را در پوشه public_html و تمام پوشه های اصلی سایت و پوشه هایی که ممکن اسکرپیت ها یا فایل ها نیاز به این تابع داشته باشند آپلود کنید.