【问题标题】:How to replace product id with product name in url using routing in Codeigniter 3.0如何使用 Codeigniter 3.0 中的路由将产品 ID 替换为 url 中的产品名称
【发布时间】:2019-02-02 17:13:08
【问题描述】:

这是我的网址:https://rentals.in/product/categories/41

这里的 41 是产品 ID,它的产品名称存在于 DB 中是 Electronics,所以我想使用 Codeigniter3.0 中提供的路由功能动态将此 URL 转换为“https://rentals.in/product/categories/Electronics”。路由中是否可以使用任何回调函数来实现上述目标?还是其他方式?

【问题讨论】:

标签: php routing codeigniter-3


【解决方案1】:

CodeIgniter 默认遵循下面的路由,通过id 获取数据,如果你完全替换id 部分并通过name 搜索,那么就有可能得到错误的数据,它会给出第一个匹配的@987654325 @。

example.com/class/function/id/

我建议您像这样创建 Url,并将姓氏部分设为可选

rentals.in/product/categories/41/Electronics

这将使用id 获取数据并显示类别的name

就像 SO 一样。在两个网址下方打开相同的页面。

//stackoverflow.com/questions/52051604

//stackoverflow.com/questions/52051604/how-to-replace-product-id-with-product-name-in-url-using-routing-in-codeigniter

请参考this answer 在 CodeIgniter 路由中设置可选参数

【讨论】:

  • 我们使用“rentals.in/product/categories/41/Electronics”这样的 URL 并将路由设置为 $route['signup'] = "user/signup"; $route['signup/(:num)'] = "user/signup/$1";但什么也没发生
猜你喜欢
  • 2013-08-28
  • 2012-09-02
  • 2013-01-08
  • 2019-07-29
  • 1970-01-01
  • 2019-12-04
  • 2021-11-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多