我有一个问题,要从通过jquery插入到数据库中的代码中应用Codeigniter查询,我只需要字母数字字符。

我一直在使用REGEXP清理我不需要的字符,如果我直接在查询中键入字符,则该查询有效,但如果我使用另一个查询中的变量,则不会。

<?php    
    $this->db->select('niv');
    $this->db->from('tbl_notes');
    $this->db->where('notes_id', $notes_id);
    $query = $this->db->get();
    if($query->num_rows()){
        $niv = $query->result();
    }
    $this->db->select('*');
    $this->db->from('tbl_flotilla_history');
    $this->db->where('notes REGEXP ', "'.*;s:[0-9]+:\"$niv\".*'", false); 
    $this->db->limit(10);
    $query = $this->db->get();
    if($query->num_rows()){
        $history = $query->result();
    }
?>

当我在另一个查询中放入$ niv变量时,查询结果为空

我该如何解决?

问候

#1楼 票数:0

尝试这个 :

<?php
    $history = NULL;
    $this->db->select('niv');
    $this->db->from('tbl_notes');
    $this->db->where('notes_id', $notes_id);
    $query = $this->db->get();
    if($query->num_rows()) $niv = $query->result();
    $this->db->select('*');
    $this->db->from('tbl_flotilla_history');
    $this->db->where('notes REGEXP ', '".*;s:[0-9]+:\"'.$niv.'\".*"', false);
    $this->db->limit(10);
    $query = $this->db->get();
    if($query->num_rows()) $history = $query->result();

  ask by Octavio Sanromán translate from so

未解决问题?本站智能推荐:

2回复

where子句不适用于类似查询

我有一个搜索查询,当我搜索所有类似的关键字都可以正常工作时,记录将显示匹配的条件,但是问题是where子句不起作用。
1回复

SQL查询不适用于三个表联接

我应用了联接查询,但似乎无法正常工作。 它没有选择任何数据。 当print_r时row_data为空,但是当我print_r $ q时它显示所有数据,
2回复

Codeigniter更新查询不适用于表单

嘿伙计们,我在通过 codeigniter 中的表单运行更新查询时遇到问题。 没有返回错误,但查询未在数据库中更新。 应该注意的是,在同一页面上还有另一个表单运行正常工作的插入查询。 看法: 控制器: 模型: 我已经利用了以下资源,但仍然没有运气: CodeIgniter MySQL 查询不起作用
2回复

SQL查询适用于phpMyAdmin,但不适用于Codeigniter

我有这个查询 SELECT arl_kind, IF (tof_art_lookup.arl_kind = 2, tof_suppliers.sup_brand, tof_brands.bra_brand) AS brand, arl_display_nrFROM tof
1回复

CodeigniterWhere子句不适用于别名变量

我正在尝试使用具有多个表的联接的SQL来获得结果。 但是where子句不起作用... 如果我打印查询,它将打印为 我需要转义查询字符串,例如: 如何实现呢?
2回复

MySQL查询不适用于我CodeigniterPhp

我正在使用带有Codeigniter的mysql,这是我的表结构: 表A: 表B: 现在,我想获取所有具有类型计数的医生记录,我想要以下结果: 我尝试使用以下代码,但对我不起作用,该怎么办?
3回复

TIMESTAMPDIFF不适用于codeigniter中的mysql查询

所以基本上我在我的模型中有一个 TIMESTAMPDIFF 查询来确定持续时间,我希望它在视图中显示持续时间。 问题是,它会显示错误。 请帮帮我,谢谢。 这是我对模型的查询 (model_attendance.php):
1回复

COALESCE不适用于CodeIgniter

我尝试了很多次,但没有任何效果。 我尝试了3个查询: 用户表已加入 尝试不加入 CodeIgniter版本2.1.4 MySQL版本5.5.24 我只想要显示名称,而不是NULL 。 如果links.name为NULL,则获取users.username 但