php - 如何在 DQL CodeIgniter 中传递变量

标签 php mysql codeigniter doctrine

我在 DQL 中遇到了如何传递 session 用户 ID 的问题

$vars['mood'] = Doctrine_Query::create()
->select(’m.mood_name, a.id, m.account_id’)
->from(’mood m, m.account a’)
->where(’m.account_id=”7″‘)

我想根据当前登录的用户显示数据。

m.account_id=Current_User::user()->id;

这是行不通的

最佳答案

CodeIgniter 中的 session 值

The documentation表示如果你想从 session 中提取一个值,你应该使用以下语法:

$this->load->library("session");
/*...*/
$userid = $this->session->userdata("userid");

Doctrine 中的 WHERE 子句

根据DQL Documentation ,我们只需要将其修补到您的 where 语句中:

->where("m.account_id = ?", $userid)

关于php - 如何在 DQL CodeIgniter 中传递变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1947324/

相关文章:

php - 将字符串传递给 PHP 文件以查询 SELECT 语句

MySQL - 按 GROUP_CONCAT 分组

mysql - 从该查询中的另一个表中获取值

php - 从三个表和一个序列化列中选择数据的 SQL 查询

php - 在 Codeigniter 中检索 session 数据

php - 将数据拆分为 3 列

php - Codeigniter 表单提交并上传文件

php - 如何在 Codeigniter 中记住用户上次阅读的 10 篇带有 session 时间戳的文章?

php - & 产品名称中的字符导致验证错误

mysql - 显示单行的特定 MySQL 表字段