بسم الله الرحمن الرحيم
الموضوع منقول من موقع أجنبي ونسيت الرابط ولعله موقع Zend
باختصار محركات البحث لا تهتم بالبرامترات التي تكون بعد اسم ملف الصفحة مثل
http://localhost/my.php?v=1&s=2
فإنها تلغي في البحث المتغير v وs وتبحث في الصفحة http://localhost/my.php فقط
ولكن لو كتبنا المتغيرات بالطريقة التالية
http://localhost/my.php/v/1/s/2
فإنها لن تلغيها وتعتبرها مسار لملف الصفحة
وبناء على ذلك كيف نصل لتلك المتغيرات في صفحتنا ؟؟؟
نفذ الكود التالي وستفهم كل شيء
<?
if (!$_SERVER['PATH_INFO'])
header("Location: ".$_SERVER['PHP_SELF'].'/k/1/d/2/f/4');
#--------------------------------------------------------------#
function debug_print_r($data)
{
ob_start();
print("<pre>\n");
print_r($data);
print("</pre>\n");
$result = ob_get_contents();
ob_end_clean();
return $result;
}
#--------------------------------------------------------------#
$PATH_INFO = $_SERVER['PATH_INFO'];
echo "<h3>SERVER[PATH_INFO]</h3>".$PATH_INFO;
echo "<br />#--------------------------#<br />";
$HTTP_PATH_INFO = explode("/",$PATH_INFO);
array_shift($HTTP_PATH_INFO);
reset($HTTP_PATH_INFO);
echo "<h3>HTTP_PATH_INFO</h3>".debug_print_r($HTTP_PATH_INFO);
echo "<br />#--------------------------#<br />";
$HTTP_PATH_VARS = array();
while( list($index,$key) = each($HTTP_PATH_INFO) ) {
list($index,$val) = each($HTTP_PATH_INFO);
$val = urldecode($val);
$HTTP_PATH_VARS[$key] = $val;
$$key = $val;
}
echo "<h3>HTTP_PATH_VARS</h3>".debug_print_r($HTTP_PATH_VARS);
echo "<br />#--------------------------#<br />";
?>انسخ الكود وضعه في صفحة .php فارغة ثم نفذه
بالتوفيق

