【问题标题】:Change url data in PHP codeigniter在 PHP codeigniter 中更改 url 数据
【发布时间】:2017-06-30 15:07:46
【问题描述】:

好的,我开始使用php和codeigniter作为框架,我想知道是否可以修改url,例如我有以下用户控制器和一个编辑方法来编辑一个数据用户的 url 看起来像这样:http://localhost/sis/user/edit/2,我想知道是否可以隐藏传递给我的控制器方法的参数

【问题讨论】:

  • 用.htaccess,或许可以。
  • 我认为不可能在控制器中传递值
  • 代替参数,可以试试slug..
  • 那么可以通过名称而不是显示id来更改它吗?留下另一个选项
  • 为什么要隐藏它?

标签: php codeigniter


【解决方案1】:

,如果您在 URL 中使用传递给控制器​​的参数,则无法隐藏它们。

您可以使用 Codeigniter 路由 (https://www.codeigniter.com/userguide3/general/routing.html) 做很多花哨的事情,但隐藏参数不是其中之一。如果要“隐藏”参数,则必须使用另一种传递这些参数的方式。例如,可以通过用户编辑表单中的隐藏字段传递参数,如下所示:

<form action="http://localhost/sis/user/edit">
  <!-- Hidden input field that contains user id -->
  <input type="hidden" name="userid" value="2">

  <input type="text" name="firstname">
  <input type="text" name="lastname">
  <input type="submit" value="Edit user">
</form> 

您可以像这样在控制器中获取您的用户 ID:$_POST['userid']。或者 CodeIgniter 使用 $_POST 的方式,$this-&gt;input-&gt;post('userid')

【讨论】:

    【解决方案2】:

    如果您想在 hidden 中传递参数,您需要添加一个具有 id 值的输入 hidden(在您的情况下为 2),然后您可以提交您的表单

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-03-02
      • 2015-04-26
      • 2010-11-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多