Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/265.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何使用CodeIgniter数据库中促销的开始日期和截止日期?_Php_Codeigniter_Session - Fatal编程技术网

Php 如何使用CodeIgniter数据库中促销的开始日期和截止日期?

Php 如何使用CodeIgniter数据库中促销的开始日期和截止日期?,php,codeigniter,session,Php,Codeigniter,Session,我想从CodeIgniter数据库中获取促销的开始日期和过期日期,以便促销自动出现在开始日期上,并在过期日期后消失 我怎样才能做到这一点 这是数据库的布局: promotion: id(primary,autmatic), image(varchar,255), description(longtext), start_date(datetime), expire_date(datetime), 内容示例如下所示: id image description start_date expired

我想从CodeIgniter数据库中获取
促销的
开始日期
过期日期
,以便促销自动出现在
开始日期
上,并在
过期日期
后消失
我怎样才能做到这一点

这是数据库的布局:

promotion:
id(primary,autmatic),
image(varchar,255),
description(longtext),
start_date(datetime),
expire_date(datetime),
内容示例如下所示:

id image description start_date expired_date
1  1.jpg textpromo1   1/10/2015 5/10/2015  
2  2.jpg textpromo2   8/10/2015 22/10/2015
2  3.jpg textpromo3   1/11/2015 12/11/2015
这是我在视图中的查询代码

<?php $query = $this->db->get('promotion'); ?>
<?php foreach($query->result() as $val): ?>
<div class="promotion">
<p><?php echo image; ?></p>
<p><?php echo description; ?></p>
<p><?php echo start_date; ?></p>
<p><?php echo expired_date; ?></p>
 </div>
<?php endforeach; ?>

根据讨论,您希望获取开始日期和到期日期之间的记录

SELECT * 
FROM promotion 
WHERE start_date <= '2015-10-23' AND expire_date >= '2015-10-23'
选择*
晋升
其中开始日期='2015-10-23'
在codeigniter中,您可以这样做

 <?php 
   $this->db->where('start_date <= ' , date('Y-m-d')); 
   $this->db->where('expired_date >= ' , date('Y-m-d')); 
 ?>


您可以在一些变量中获取今天的日期,并在查询中使用。

使用where条件,如下面的条件

$this->db->where('start_date >= ' , date('Y-m-d'));
$this->db->where('expire_date <= ' , date('Y-m-d'));
$query = $this->db->get('promotion');
$this->db->where('start_date>=',date('Y-m-d');

$this->db->where('expire_date预计输出是什么?您想获取今天的门小于到期日期,大于开始日期??例如,我想在2015年10月1日开始,并在2015年10月10日结束。好的,但您想获取数据的方式是什么?请在2015年10月12日至2015年10月20日之间进行一点elobarate。或其他促销活动,但在我从未这样做之前,您能帮助我吗?好的,thz q Niranjan N Raju我会测试我Niranjan抱歉不是今天某一天客户想要促销它的意思是某一天我想要促销我做了这个代码但我得到了空白页$this->db->where('start_date>=',date('Y-m-d');$this->db->where('expire_date Your code WHERE start_date>='2015-10-23'和expire_date我没有遵循,但它是空白页。这是因为数据库中的日期格式为'd-m-Y',WHERE语句格式为'Y-m-d',所以它们不匹配。MySQL日期格式为(Y-m-d),所以我将两者都更改为匹配。)
$this->db->where('start_date >= ' , date('Y-m-d'));
$this->db->where('expire_date <= ' , date('Y-m-d'));
$query = $this->db->get('promotion');