无法从PHP中的数据库中获取值
我试图使用以下代码从数据库中获取一个值无法从PHP中的数据库中获取值,php,sql,laravel-4,Php,Sql,Laravel 4,我试图使用以下代码从数据库中获取一个值 $request = Registrationrequest::where('course_id', $id) ->where('user_id', Auth::user()->id) ->where('registered', true)->count(); 我用的是拉威尔。我有一行
$request = Registrationrequest::where('course_id', $id)
->where('user_id', Auth::user()->id)
->where('registered', true)->count();
我用的是拉威尔。我有一行有课程id=4
,用户id=3
和注册=true
。
当我分别转储每个值时,我正在确认它。但是当我一起使用where条件时,我不会得到计数值1,而是得到0
我还有一个问题,我在哪里使用
$request = Registrationrequest::where('course_id', $id)
->where('user_id', Auth::user()->id)
->where('registered', false)->first();
当注册值为false时,此操作非常有效
有人能告诉我哪里错了吗?用
1
更改true
,用0
更改false
,更改了插入
,删除
和选择
查询中的所有假
和真
$request = Registrationrequest::where('course_id', $id)
->where('user_id', Auth::user()->id)
->where('registered', 0)->first();
registered
列的类型是什么(在数据库中)?@SverriM.Olsen它是二进制的如果将其设置为1
而不是true
,以及0
而不是false
,它是否工作?不,它不工作。我试过了,我发现了问题。当我保存数据时,我将registered保存为“true”或“false”。它必须是1或0。当我用0和1修改代码中所有的假和真时,它起作用了。通常真和假应该起作用。真的很管用。但这不是假的。无论如何,将其更改为1和0是可行的。这是因为它们被转换为字符串。将布尔值强制转换为字符串时,它们将转换为:true
='1'
和false
='
(空字符串)。