كيف استطيع اخفاء اسم الملف والـ id من الهتكس في برمجة الـ PHP

السلام عليكم

اقوم بعمل ببرمجة مكتبة الكترونية وعند تسجيل المستخدمين يستطيع المستخدم الذهاب إلى لوحة التحكم الخاصة به، المشكلة أن الرابط يظهر بالشكل التالي:

domain.com/control.php?user=mohammed

ارغب بحذف المسار الطويل في المتصفح ويبقى بالشكل الآتي:

domain.com/control/mohammed

ما هي الطريقة الصحيحة لفعل ذلك ، هل استطيع تعديلها من الهتكس في الموقع أو يمكن برمجتها بالـ PHP.


Elalfi_Web أضف ردا

هذه الطريقة تسمى Route System موجودة في كل إطارات العمل مثل PHP Laravel و Python Flask وغيرها الكثير.

كل ما عليك فعله هو أن تأتي بهذا المسار /control/mohammed في ملف الـ index

ويمكنك فعل ذلك من خلال المصفوفة $_SERVER كما في المثال التالي :

$route = trim($_SERVER['REQUEST_URI'], '/'

إستخدمت trim لإزالة العلامات المائلة '/' الزائدة من بداية ونهاية المسار

بعد ذلك يمكنك أن تقوم بتقسيم هذا المسار بإستخدام دالة explode

$request_uri = explode('/', $route);

لاحظ أنه يجب عليك أن تقوم بعمل ملف .htaccess لتوجية كل الطلبات إلى ملف index.php وهذا ما يجب أن يكون محتواه:

RewriteEngine On

# RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^ index.php [QSA,L]

لا استخدم اي اطار عمل ، فقط PHP Native بدون اي اطر

آه أعلم ذلك فقط حاولت أنا ايضُا أن أقوم ببناء إطار عمل من قبل لذلك ممرت بهذه المشكلة وكنت أريد أن أقوم بتحويل الروابط من هذا الشكل "domain.com/control.php?user=mohammed" إلى هذا الشكل "domain.com/control/mohammed" وكان الحل هو إستخدام $_SERVER['REQUEST_URI']

وهذه الطريقة التي ذكرتها سابقُا ستعمل معك في PHP Native بدون أاي إطر عمل.