- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有以下查询尝试在 CodeIgniter 中更新:
$sql = "UPDATE fanout.manual_data
SET call_leader_id = ?
WHERE id IN (?)";
$q = $this->db->query($sql, array($leaderID, implode(", ", $empIDs)));
内爆正在我的数组中创建一个包含所有 ID 的字符串。但是,这导致查询看起来像:
UPDATE fanout.manual_data SET call_leader_id = '55993' WHERE id IN ('57232, 0097726, 0076034');
当我需要的是:
UPDATE fanout.manual_data SET call_leader_id = '55993' WHERE id IN (57232, 0097726, 0076034);
唯一的区别是 ID 字符串周围的单引号。这是我需要自己做的事情并跳过 CI 的查询绑定(bind) (http://codeigniter.com/user_guide/database/queries.html) 还是 CI 可以处理而我只是错过了一步?
谢谢。
最佳答案
我认为您无法跳过该行为。从技术上讲,您传递的是一个字符串,因此 CI 会这样解释它并简单地用引号将其括起来。
我认为您最好手动连接 $empIDs
(例如使用 foreach
循环),然后使用 $this->db 转义它们->escape()
以防万一。
关于mysql - CodeIgniter - 内爆/查询绑定(bind)导致不需要的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4854710/
我有一个多选字段 1 Months 2 Months 3 Months 我的 PHP 代码内爆多个值,即 123 作为 1,2,3 并将其插入数据库。问题是该字段不是必填字段,当我将其留空时会出现
片段: $temp = array(); foreach ($data as $key => $value) { // This line varies, from HTML to URLs,
我有一个带有查询的脚本,该查询使用连接从两个单独的表中的数据库收集信息。现在我想将这 2 个数组及其值并排插入到一个新表中。 $query = "INSERT INTO `new_table`
我需要从一个表中选择所有电子邮件地址,但通过 ; 对它们进行内爆。我是否可以仅使用单个 MySQL 查询来执行此操作? 最佳答案 是的, 与 GROUP_CONCAT .但您应该知道,默认的最大返回长
我还是 PHP 的初学者。所以我有一个名为“全名”的变量,我试图 explode 和内爆第一个和最后一个变量值。 $fullname='Andre Filipe da Costa Ferreira';
这个问题在这里已经有了答案: Implode a column of values from a two dimensional array [duplicate] (3 个答案) 关闭 4 个月前
内爆一个简单的数组 看起来像这样 $array = array('lastname', 'email', 'phone'); $comma_separated = implode(",", $arra
我有一个 php 表单,它有一个复选框选项,如果用户选择“其他”,则会出现一个文本输入。这运行良好,但未提交数据。我收到错误消息 PHP implode():传递的参数无效 这是: PHP验证 if(
我的 js 文件中有一个数组。在用户选择他喜欢的座位后,数组中的数据创建就完成了。 然后我将它发送到一个php文件中进行显示。javascript代码如下所示。 $('#btnsubmit').cli
我有一个数组 $array = array("连衣裙","套装"); 当我尝试使用 phpredis 制作 BITOP 时 $value = implode(",",$array); $redis->
我选择了 (2) 个元素,通过以下方式选择: $(this).parents("tr:first").children("td").children("span"); 当我这样做时: $(this).
以下脚本生成包含所需数据的 txt 文件,但它在文本文件中生成了两次数据。 mysql_connect($hostname_MySQLCon, $username_MySQLCon, "") or
以下脚本生成包含所需数据的 txt 文件,但它在文本文件中生成了两次数据。 mysql_connect($hostname_MySQLCon, $username_MySQLCon, "") or
假设我有两个字符串要用定界符“连接”。 String s1 = "aaa", s2 = "bbb"; // input stringsString s3 = s1 + "-" + s2; // joi
implode() 函数适用于普通数组,但不适用于使用 mysql_fetch_array 创建的数组(我也试过 mysql_fetch_row) 如何让它们工作? 定义如上: $friends =
我有以下查询尝试在 CodeIgniter 中更新: $sql = "UPDATE fanout.manual_data SET call_leader_id = ?
现在已经为此苦苦挣扎了一段时间,可能很简单...... 我在尝试提交联系表单时不断收到以下错误 Warning: implode() [function.implode]: Invalid argum
我收到以下错误... 警告:implode() [function.implode]:在第 1335 行的\wp-content/themes/mytheme/functions.php 中传递的参数
我需要在客户端将一些 PHP 转换为 javascript。 有人能给我指出这句话的正确翻译吗?如果需要外部库也没有问题。 $a = pack("A32", "foobar"); $b = implo
我有以下数组 $appArray=array('a', 'b', 'c'); 我想生成类似'a\nb\nc\n' 的输出。问题是当我使用 implode('\n', $appArray) 我得到 'a
我是一名优秀的程序员,十分优秀!