المجلة الإسلامية-عدد مرات الظهور 104659 - عدد الضغطات 1433
 
 
 
اعلانات
 

تفاصيل المقال
عنوان المقال
هل نضع register_globals على هيئة الفتح أو الغلق؟
القسم
برمجة المواقع
الكاتب
بسام نور
تاريخ الإضافة
04/01/2007
المقال

 

بسم الله الرحمن الرحيم

الخاصية register_globals تمنحك القدرة على الحصول على قيمة المتغير من الـforms والوصلات URL. ولكن للأسف فإن هذه الخاصية القديمة مازالت مستخدمة في الكتب والدروس والأمثلة الحديثة. فمطوري البي اتش بي PHP أنفسهم أدركوا عيب هذه الخاصية وعملوا على تنقيح المسألة من خلال وضع الخاصية في موضع مغلق off في ملف الـphp.ini بشكل افتراضي بعد أن كان مفتوحا on. وتم نقاش هذا الأمر في دليل استخدام لغة بي اتش بي في الوصلة التالية:
http://www.php.net/manual/en/security.registerglobals.php

فاذا وضعت الخاصية مفتوحة، فإنك تخاطر بأن لا يعمل برنامجك على بعض المنصات platforms! كما إنه أمر غير محبذ أمنيا. ولكن هناك طريقة تجعل كل برامجك تعمل على كل المنصات وهي التي سنذكرها في الفقرة التالية.

فالطريقة المثلى للحصول على قيم هذه المتغيرات هي عبر استخدام مصفوفاتها arrays. أي تستطيع استعمال الأمر التالي:

$_GET['var']


ملاحظة: var هو المتغير المنقول إلينا من صفحة أخرى

أو استعمل الأمر التالي:

$_SERVER['HTTP_USER_AGENT']



عوضا عن:

$HTTP_USER_AGENT


فالمصفوفات الرئيسية هن أربع:

$_GET
$_POST
$_COOKIE
$_SERVER


طبعا اعتمادا على مصدر المتغير :)
 
تستطيع قراءة المزيد عن هذه المصفوفات هنا:
http://www.php.net/manual/en/language.variables.predefined.php
http://www.php.net/manual/en/reserved.variables.php

والسلام :)

ملاحظة: أصل المقالة كتبها المسمى بـDr. Pepper وتوجد المقالة في الموضوع التالي:
http://www.sitepointforums.com/showthread.php?threadid=54074
وقد تمت ترجمة المقالة بتصرف وباذن صاحبها


نسخة للطباعة أرسل لصديق


أضف تعليق

الأسم
التعليق
   
 
8
عدد المقالات
36
18
9
8
  egyptcoders برمجة تصميم
جميع الحقوق محفوظة لـ