PHP   发布时间:2022-04-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了PhalconPHP-解析错误时..之前的扫描错误大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

我正在使用PhalconPHP 1.3.4构建Web应用程序,由于某些值通过关系存储在另一个表中,因此我试图同时从多个表中选择数据.

我的查询MysqL工作台中工作正常,但是当我尝试使用PhalconPHP执行查询时,出现以下错误

ScAnning error before 'Bookings, Trips]...' when parsing: SELECT count(bkId) AS bookings FROM [Bookings, Trips] WHERE ((bkUserId = :userId:) AND (CURDATE() > tripFromDatE)) AND (CURDATE() < DATE_ADD(tripFromDate, INTERVAL 2 WEEK)) (172)

我的PHP代码

$query = new Builder();
$query->columns("count(bkId) AS bookings");
$query->from('Bookings, Trips');
$query->where("bkUserId = :userId:");
$query->andWhere("CURDATE() > tripFromDate");
$query->andWhere("CURDATE() < DATE_ADD(tripFromDate, INTERVAL 2 WEEK)");
$result = $query->getQuery()->execute(["userId" => $userId])->bookings;
return ($result > 0);

我已经读到这可能是一个错误,但是应该在1.3.2版中修复,我目前在做错什么吗?

在这里先向您的帮助表示感谢.

解决方法:

我不认为from中的两列是正确的语法.在文档中有以下示例:

$builder->from('Robots')
    ->addFrom('Parts', 'p');

所以你的例子应该是这样的

 $query = new Builder();
    $query->columns("count(b.bkId) AS bookings");
    $query->from('Bookings', 'b');
    $query->addFrom('Trips');
    $query->where("b.bkUserId = :userId:");
    $query->andWhere("CURDATE() > b.tripFromDate");
    $query->andWhere("CURDATE() < DATE_ADD(b.tripFromDate, INTERVAL 2 WEEK)");

要么这样做,要么最好转换为使用联接.

大佬总结

以上是大佬教程为你收集整理的PhalconPHP-解析错误时..之前的扫描错误全部内容,希望文章能够帮你解决PhalconPHP-解析错误时..之前的扫描错误所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: