php - 在类别列表组件中添加 where 查询

标签 php mysql joomla

我在类别列表组件中添加了新参数,

这是一个组合框 过滤器类型

  1. 全部
  2. 本月
  3. 本周
  4. 过去

我可以使用代码 $params->get('filter_type') 获取该值。

现在我陷入了在 com_contents 中的何处添加自定义查询的困境。这可能吗?

谢谢!

最佳答案

这里没有太多内容,但这是一般方法:

$sql = 'SELECT whatever FROM com_contents';
switch ($params->get('filter_type')) {
case 'This Month':
  $sql .= ' WHERE EXTRACT(YEAR_MONTH FROM my_date) = EXTRACT(YEAR_MONTH FROM CURRENT_DATE)';
  break;
case 'This Week':
  $sql .= ' WHERE YEARWEEK(my_date) = YEARWEEK(CURRENT_DATE)';
  break;
case 'Past':
  $sql .= ' WHERE <whatever "past" means>';
  break;
}
... and then execute the query

请注意,All 选项没有 case;这是因为它不需要 WHERE 子句。

关于php - 在类别列表组件中添加 where 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16578742/

相关文章:

mysql - 从 Phpmyadmin 恢复数据库

MySQL 匹配多个值

Joomla - 文章中的 "paragraph permission"

CSS 样式 - 鼠标悬停时的标题颜色

php - Joomla - 返回 JSON 数据的 Controller 任务

PHP pam_auth 和 cookies

php - 具有可变大小变量列表的 MySQL 准备语句

php - api cakephp 休息认证

php - 使用 MySQL 查询作为 PHP 脚本的标识,将 FCM 推送通知发送到 Android 应用程序中的特定设备

mysql - Cloud SQL 数据库无法从 mysql 客户端连接