Nima Etemadi Far
4 سال پیش توسط Nima Etemadi Far مطرح شد
11 پاسخ

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

سلام
............................................................................
این آدرس رو در نظر بگیرید
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


ثبت پرسش جدید
Ali Abbasi
تخصص : برنامه نویس php
@Ali.Abbasi1381 4 سال پیش مطرح شد
0

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

RewriteEngine On

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


Nima Etemadi Far
@nimaet76 4 سال پیش مطرح شد
0

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


Reza Jashnsaz
تخصص : مهندس نرم افزار
@rezajashnsaz0011 4 سال پیش مطرح شد
1

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


Ali Abbasi
تخصص : برنامه نویس php
@Ali.Abbasi1381 4 سال پیش آپدیت شد
0

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


Nima Etemadi Far
@nimaet76 4 سال پیش مطرح شد
0

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


miladk313
تخصص : برنامه نویس لاراول
@miladk313 4 سال پیش مطرح شد
1

باید یه فیلد دیگه به دیتابیستون اضافه کنین به نام 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
@nimaet76 4 سال پیش مطرح شد
0

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


علی بیات
تخصص : توسعه دهنده ارشد وب
@ali.bayat 4 سال پیش مطرح شد
0

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


arshia esmailzadeh
تخصص : برنامه‌نویس
@arshiaas1973 4 سال پیش آپدیت شد
-1

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

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

zohreh70
@zohreh.ahmadi70 3 سال پیش مطرح شد
0

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

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

@nimaet76


نیما - ش
تخصص : برنامه نویس وب
@nimageneral 3 سال پیش مطرح شد
0

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


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

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