【问题标题】:Empty parameters in codeigniter urlcodeigniter url中的空参数
【发布时间】:2015-09-04 19:10:10
【问题描述】:

我有一个带有 4 个参数的控制器。有时参数可以为空。标准网址类似于 review/fetch_reviews/10/uk/topcmets/1234 其中 10 表示分页计数。如果该参数为空,则 url 变为 review/fetch_reviews//uk// 并且我的 sql 查询变为 select * from table limit uk,10 . 我什至将参数的默认值设置如下

function fetch_reviews($page="10",$banktype="",$country="",$filter=""){

如何处理? Itried URI 路由但不起作用。

【问题讨论】:

  • 您可以传递 // 它自己传递空参数,例如site.com/class/function/papra1/para2//para4,此处缺少第 3 段;但是您必须在 para3='' 等函数中将 para3 设置为可选参数

标签: codeigniter codeigniter-routing


【解决方案1】:

您可以将您的功能参数设置为可选并传递此可选值,如

网址:

site.com/class/myfunction/para1/null/para3

和功能

public function myfunction($para1,$para2="null",para3) { //function body }

【讨论】:

  • 感谢您的回复。我这样做了,但发生的事情是,将其视为 null 它假设 para2 在 para1 的位置传递,所以我的查询“limit 10,10”变为“limit uk,10”
  • 呃,很奇怪的问题 class/myfunction//undefined// 这工作正常,但是 class/myfunction//retail// 抛出错误:D :D 所以我添加了条件 if($currpage == "未定义" || !is_numeric($currpage)) $currpage = 0;现在它起作用了。感谢 chintan 提供线索。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-09-24
  • 2016-02-14
  • 2011-06-06
  • 1970-01-01
相关资源
最近更新 更多