2012-12-18 75 views
0
<?php 
     $database = & JFactory::getDBO(); 
     $query = "SELECT asset_id FROM #__content WHERE state = 1"; 
     $database->setQuery($query); 
     $count_at = $database->loadObjectList(); 
     $count_nbr = count($count_at); 
?> 

所以$count_nbr返回所有创建和发布的文章,但我需要添加“今天”过滤器。如果某些大师能HEP OT请...需要2种类型的过滤器:“1日”和“周” ...如何为mysql添加日期过滤器。 Joomla

更新:加入$date = date (Y-m-d); AMD modifieng字符串SELECT asset_id FROM #__content WHERE state = 1 AND publish_up = $date; doen't帮助的原因在MySQL YMD publish_up H:我:S和我需要忽略时间印记......

回答

0

要获得发表的文章今天:

$today = date('Y-m-d'); 
$query = "SELECT asset_id FROM #__content WHERE state = 1 AND DATE_FORMAT(publish_up, '%Y-%m-%d') = '$today'"; 
... 

此使用MySQL DATE_FORMAT()功能已发表日期Y-m-d格式格式,从而使你可以比较它。

为了得到这个星期发表的文章使用YEARWEEK()功能:

$query = "SELECT asset_id FROM #__content WHERE state = 1 AND YEARWEEK(publish_up) = YEARWEEK(NOW())"; 
+0

THX这么多,它的工作! –

+0

那么周选项呢? –

+0

@AndrewSekaev加上本周选项 – MrCode