راکت

آدرس دهی صفحات در php

12 پاسخ

سلام
............................................................................
این آدرس رو در نظر بگیرید
https://roocket.ir/series/learning-php/episode/1
این آدرس چند قسمت است:
series : دسته بندی
learning-php : نام آموزش
episode : قسمت آموزش
1 : تعیین قسمت آموزش
............................................................................
من php رو در این حد بلدم که بخوام آدرس دهی کنم نهایت چیزی ک میتونم بسازم اینجوریه:
https://roocket.ir/series.php?serie=learning-php&episode=1
............................................................................
سطحی که من با php کار کردم کمی بالاتر از این دوره آموزشی هستش:
https://roocket.ir/series/learning-php
............................................................................
لطفا راهنمایی کنید
با تشکر

@hesammousavi @ali.bayat @juza66 @rezajashnsaz0011

ثبت پرسش جدید

پاسخ‌ها

12
Soh3illl
Soh3illl
@soh3illl

تخصص: برنامه نویس php

سلام دوست عزیز
اگر شما بخواهید که روت هایی مثل بالا داشته باشید باید در فایل .htaccess که داخل پروژه تون هستش این دستور رو قرار بدید

RewriteEngine On

این دستور منجر به فعال سازی ماژول mod_rewrite میشه.

Nima Etemadi Far
Nima Etemadi Far
@nimaet76

وقتی mod_rewrite فعال بشه باید بعدش چیکار کنم ؟
آموزش جامعی در این رابطه می شناسید که بهم معرفی کنید؟
@Ali.Abbasi1381

شاید پاسخ شما همین‌جا باشد

Reza Jashnsaz
Reza Jashnsaz
@rezajashnsaz0011

تخصص: مهندس نرم افزار

لاراول از pretty url استفاده میکنه
شما لاراول استفاده کنی دیگه نیازی ب تنظیم هیچی نداری

Soh3illl
Soh3illl
@soh3illl

تخصص: برنامه نویس php

دوست عزیز اگر که می خوای هزینه کنی بهتره به آموزشی که توی سایت راکت درباره mvc هست مراجعه کنی در غیر این صورت این آموزش می تونه براد مفید باشه.

Nima Etemadi Far
Nima Etemadi Far
@nimaet76

من تونسم تا این مرحله پیش برم
فرضا من یک سایت دارم که برای نمایش محصولاتم از این روش استفاده می کنم
example.com/products.php?id_p=1
الان تونستم با دستکاری در htaccess و فعال کردن RewriteEngine این آدرس رو تا اینجا برسونم که اینطور نشون داده بشه
example.com/products/1
...........................................................................
اگر بخوام بجای آیدی محصول که الان شماره یک هستش یک آدرس این شکلی ایی داشته باشم
example.com/products/sumsung-a50-128-gig
باید چیکار کنم؟

miladk313
miladk313
@miladk313

تخصص: برنامه نویس لاراول

باید یه فیلد دیگه به دیتابیستون اضافه کنین به نام slug ، حتما باید یونیک باشه
بعد با استفاده از تابع زیر slug رو تولید میکنین مثلا از عنوان محصول و ذخیره میکنین و بعدش با استفاده از اون فیلد کوئری میزنین و میگیرینش.


public static function slugify($text)
{
  // replace non letter or digits by -
  $text = preg_replace('~[^\pL\d]+~u', '-', $text);

  // transliterate
  $text = iconv('utf-8', 'us-ascii//TRANSLIT', $text);

  // remove unwanted characters
  $text = preg_replace('~[^-\w]+~', '', $text);

  // trim
  $text = trim($text, '-');

  // remove duplicate -
  $text = preg_replace('~-+~', '-', $text);

  // lowercase
  $text = strtolower($text);

  if (empty($text)) {
    return 'n-a';
  }

  return $text;
}```
Nima Etemadi Far
Nima Etemadi Far
@nimaet76

این تابع یک عنوان محصول مثلا از ما میگیره و بعد تبدیل میکنه به یک اسم قابل استفاده . و ما میتونیم بعد این خروجی رو توی ستون slug اون محصول ذخیره کنیم و بعد بگیریمش و سوال اینجاست الان ک گرفتیمش چجوری بدیمش به htaccess و بگیم چجور ازش استفاده کنه ؟
@miladk313

علی بیات
علی بیات
@ali.bayat

تخصص: توسعه دهنده ارشد وب

شما به یه Router احتیاج دارید
گیت هاب رو بررسی کنید.. مدل های مختلفش موجوده

arshia esmailzadeh
arshia esmailzadeh
@arshiaas1973

تخصص: برنامه‌نویس

سلام .
از نظر من شما برای اینکار می توانید از لاراول استفاده کنید.
برای ساخت ادرسی مثل این :
https://roocket.ir/series/learning-php/episode/1
باید این دستور رو در فایل web.php بنویسید :
`

 route::get('/series/learning-php/episode/1',function(){  
      return view('ویو مورد نظر')  
}
zohreh70
zohreh70
@zohreh.ahmadi70

سلام
من برای اینکار از کتابخانه AltoRouter استفاده می کنم که خیلی راحت هم می تونید متغیر های عددی و متنی مختلف هم برای آدرس دهی استفاده کنید.

$router->map( 'GET|POST', '/product/[a:name]', 'product.php', 'product' );

@nimaet76

نیما  ش
نیما ش
@nimageneral

تخصص: برنامه نویس وب

آیا شما از php خام استفاده میکنید یا اینکه از یک فریمورک خاص؟ میشه لطفا این رو توضیح بدید تا روشن تر بشه این مسئله!

kia
kia
@Mr_crafting

@soh3illl کمکت میکنه

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام