【问题标题】:adding variables to Codeigniter calendar next/prev links将变量添加到 Codeigniter 日历下一个/上一个链接
【发布时间】:2012-04-24 08:15:32
【问题描述】:

我在页面上显示了一个 CI 日历,每天发送一组数据来填充,这工作正常,但是我似乎遇到了一个我无法完全解决的小问题。

我只知道 CI 大约 3 天(以及基于 OOP 的 PHP 5 天!),如果这非常简单,请原谅我。

我需要在日历的下一个/上一个链接中添加一个变量 ($pid)。 $pid 将定义从数据库中获取哪个属性,并显示所选月份的属性费率。

在我的“MY_Calendar.php”文件中,我有以下内容:

var $CI;
var $lang;
var $local_time;
var $template       = '';
var $start_day      = 'sunday';
var $month_type     = 'long';
var $day_type       = 'abr';
var $show_next_prev = TRUE;
var $next_prev_url  = '/ci/index.php/rates/property/1/';

/1/ 在网址中的位置,我需要将其更改为日历所在页面的 $pid 是什么。

我怎样才能把这个变量放到类文件中?

我假设它是一个简单的 PHP 连接来获取 URL 中的变量。

我尝试通过“$this->load->library('calendar', $prefs);”调用首选项

但偏好似乎没有通过(我在同一页面上有一个名为 $prefs 的数组)

有什么想法吗? :)

【问题讨论】:

  • 为什么要使用 $CI 超级对象?您是否在 Codeigniter 视图中工作,从模型中调用它,对吗?
  • 这就是最初在 calendar.php 文件中的内容,然后我将其制成 MY_calendar.php。我将库加载到控制器中,然后将结果输出到视图。我应该这样做吗?

标签: php codeigniter codeigniter-2


【解决方案1】:

如果您已经扩展了 CI_Calendar 类,只需添加一个新的类属性:

var $pid = 1;

如果您传入配置数组,并且您正在调用父构造函数,它应该允许您传入/设置$pid 变量。

那么您显然会从 $next_prev_url 中删除该值。

最后,您将覆盖输出下一个/上一个按钮的函数,以将$next_prev_url 与正确的$pid 连接起来。您应该将$pid 设置为当前页面,因此上一个将为-1,下一个为+1,当然检查最小和最大页码以防止在您到达末尾时显示这些链接。

【讨论】:

  • 你觉得这合适吗? $this->load->library('日历', $prefs); $data['cal'] = $this->calendar->generate($year, $month, $data['combined_array'], $prefs);它似乎没有加载 $prefs 数组,只加载了 MY_calendar.php 文件中的默认配置
猜你喜欢
  • 2013-01-10
  • 1970-01-01
  • 2010-09-15
  • 2018-08-02
  • 1970-01-01
  • 1970-01-01
  • 2013-05-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多