0

我有一个像这样的网址 http://example.com/cronetab/realTimeDeliveryReport?externalId=14133337681891060&deliveredTS=2012-09-10%2013:27:32&status=Deliverd&cause=Successfully%20Deliverd&phoneNo=919995171152

crontab 是控制器名称,realTimeDeliveryReport 是我们调用的方法。所以我们以上述格式传递参数。

我们如何在这个函数中获取这个参数值?或者我怎样才能传递像 url?externalId=14133337681891060 这样的参数?

在这里,URL 就像一个回调 URL。所以另一台服务器正在附加这样的参数..所以我需要解决方案..

4

5 回答 5

1

使用Code Igniter 输入库,您应该能够使用$this->input->get('keyName')

Code Igniter 消除了 GET 数组,但它仍然在内部存储它,因此您可以使用输入库访问值。

另一个选项是在您的配置文件中设置$config['allow_get_array'] = true;这将允许您使用$_GET['keyName']. 您可能还需要设置此配置值才能使用上述输入库函数。

于 2012-09-10T10:24:14.040 回答
1

我不确定这是否是你想要的..

尝试

$_GET['externalid']
$_GET['deliveredTS']
$_GET['status']

等等...

更新

尝试这个

功能实时交付报告(){

if($_GET['externalID'] != "") {

$this->User_model->realTimeDeliveryReport();

}

}

当您使用该网址时,参数将保存在 $_GET 变量中,您需要在那里搜索,我不确定这是否会有所帮助......但试试看;)

于 2012-09-10T08:45:23.280 回答
0

从codeigniter手册:

启用查询字符串

在某些情况下,您可能更喜欢使用查询字符串 URL:

index.php?c=products&m=view&id=345

CodeIgniter 可选地支持此功能,可以在您的 application/config.php 文件中启用。如果你打开你的配置文件,你会看到这些项目:

$config['enable_query_strings'] = FALSE;
$config['controller_trigger'] = 'c';
$config['function_trigger'] = 'm';

如果您将“enable_query_strings”更改为 TRUE,此功能将变为活动状态。然后,您的控制器和函数将可以使用您设置为调用控制器和方法的“触发器”字词访问:

index.php?c=控制器&m=方法

请注意:如果您使用查询字符串,则必须构建自己的 URL,而不是使用 URL 帮助程序(以及生成 URL 的其他帮助程序,如一些表单帮助程序),因为它们旨在处理基于分段的 URL。

http://ellislab.com/codeigniter/user_guide/general/urls.html

于 2012-09-10T09:25:25.920 回答
0
  • 请尝试在 url 中传递数据,如下所示,

http://example.com/cronetab/realTimeDeliveryReport/14133337681891060/2012-09-10%2013:27:32/Deliverd/Successfully%20Deliverd/919995171152

  • 然后在“realTimeDeliveryReport”控制器方法中访问数据,如下所示,

函数 realTimeDeliveryReport($externalId,$deliveredTS,$status,$cause,$phoneNo){

echo "$externalId,$deliveredTS,$status,$cause,$phoneNo";

}

于 2013-12-29T14:59:34.327 回答
-2

试试看发送参数
“/Player/edit_user?id=$row->id?”
在控制器中尝试
$id = $this->input->get('id');

于 2016-06-08T09:14:48.153 回答