- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想在 Redbean 上运行查询。查询是下面一个
"SELECT * FROM
tablename
WHERE name LIKE "%querystring%" OR description LIKE "%querystring%"
我试过下面一个
$querystring = "querystring";
R::findOne( 'SELECT * FROM tablename WHERE name LIKE ? OR description LIKE ?', "%$querystring%");
但是,这不起作用,导致错误“标识符不符合 RedBeanPHP 安全策略”。
我尝试的另一件事是基于此:
R::getAll( 'SELECT * FROM table WHERE title LIKE %:title%', [':title' => 'home'] );
这给出了一个 RedBean 错误“undefined offset: 0”
我正在尝试找到一种使用准备好的语句来执行此操作的方法,因此我不想将查询构造为字符串并稍后将其发送到服务器。
最佳答案
您需要的语法如下:
$mySearchString = "es";
$bean = R::find('bean',' name LIKE :name ',
array(':name' => '%' . $mySearchString . '%' )
);
所以正如您所见,LIKE 在 sql 语句中没有使用通配符,因为它是 searchValue 的一部分。您的第一次尝试就在那里,但问题是您已经在引号内编写了 php 变量,因此它没有解决。此外,findOne/find 是 RedBean 的 ORM 功能,它不适用于纯 SQL 字符串。仔细查看文档。如果您需要纯 sql,请像您一样尝试 R:getAll。与此处相同的示例
$mySearchString = "es";
$bean = R::getAll('SELECT * FROM bean WHERE name LIKE :name ',
array(':name' => '%'.$mySearchString.'%' )
);
foreach($bean as $entry) {
echo $entry['name'] . "<br />";
}
关于php - 如何使用 RedBean 运行 LIKE %..% 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22451225/
我目前使用的是 RedBean 3.5 版。我想我想转移到最新版本的 RedBean,版本 4。 我没有找到关于升级过程的文档,只是表明它并不简单。 我的问题是: 我的 RedBean 3.5 数据库
我想使用一对多和多对多关系检索一些数据 我创建了名为 floor、shop、category 的 bean,并将它们关联为: floor 1:N shop floor N:M category sho
我正在使用 RedBean ORM。为了创建模式,我使用了标准的 redbean 插入数据的方法,以便 Redbean 自动适应模式以满足我的需要。我把它放在一个脚本中,当我需要初始化我的数据库时,它
我正在使用 RedBean 创建时间表应用程序。 这是(简化的)数据库结构: 所有者 编号 姓名 电子邮件 项目 编号 描述 owner_id 任务 编号 描述 项目编号 日志 编号 开始 结束 描述
我有一个从 Redbean 生成的名为“聚合”的表,包含这些列: id - INT(11) user_id - TINYINT(3) code - VARCHAR(255) sampl
多对多映射在redbean中很容易使用,场景简单。但是如何在同一个对象之间进行多个多对多映射? 例子: 我想要完成的是在结构上与“followers”和“following”的 twitter/ins
我今天来这里是因为我无法弄清楚我使用 RedbeanPHP 进行的交易有什么问题。我猜问题出在 MySQL 的“autocommit”值上,因为它始终处于打开状态。 长话短说: 1) R::freez
我在使用 RedBean 时遇到了一些问题。我收到连接错误,无法弄清楚是什么意思,我已经查看过 Google 并找不到任何有效的解决方案,我在这里尝试了一个类似的问题,但答案对这种情况并没有真正帮助.
或者我们可以这样做吗?当你说: $book = R::dispense('books'); 并使用 RedBean_IModelFormatter 处理命名还是我遗漏了什么? 谢谢。 最佳答案 你可以
我有以下结构 USER user_id name EVENT event_id user_id event_name 如何在redbean中编写inner join? SELECT * FR
我有三张 table USER user_id,name EVENT event_id, name,desc PARTICIPATION id, type 1 yes 2
我目前在我的模型中将 RedBean 用于 ORM。 我需要将数据插入到其中一列设置为唯一的 MySQL 表中。 目前,数据是通过这样的形式插入的: //Create $object = R::dis
我正在使用 RedBean PHP ORM 来尝试注册/获取用户。也就是说,给定一个逗号分隔列表,我做 $emails = explode(',', trim($app->request->post
我最近开始使用 Redbean PHP。所以我不太了解它是如何处理事情的。直到现在,我都喜欢它为我做东西是多么简单。但是我今天遇到了一个很大的问题。我需要将信用卡号存储到表中。但是一旦我存储了这个 b
我有两个 MySQL 表: user email 电子邮件表有一个来自用户的外键。我在用户表中插入一条记录并获取插入 ID,然后插入到电子邮件表中。 我在 RedBean 中是这样做的 $user =
我正在考虑使用 RedBean 作为 ORM 映射器。目前,我正在使用自己的实现,但随着项目变得越来越大和越来越复杂,效果不是很好。 然而,有一个问题我无法找到: 就有人注入(inject)代码/查询
我刚刚注意到,在使用 PHP 和 RedBean(以及一个事务)将一些数据导入 MySQL 数据库时,我可以看到在导入运行时行数在增加。为了证实我的怀疑,我在导入函数的末尾将 R::commit()
我正在使用 RedBean ORM 编写一些代码,我想知道我是否可以仅从数据库表中加载/检索某些字段。我知道有一个加载方法,但它将整个表作为 bean 提供。我希望只获取一些字段? 嘿,当我写它的时候
RedBeanPHP uses class naming convention将模型绑定(bind)到表上。我不能遵守该命名约定,因为我有一个表名不是一成不变的项目。我需要一种方法将 RedBean_
我有两个表,table1 和 table2,通过多对多连接。到目前为止没有问题,但我会因为在生产使用中使用下面的代码而导致服务器崩溃。访问多对多连接会生成非常多的查询。 是否有更好的方法来访问数据(无
我是一名优秀的程序员,十分优秀!