mysql中condition_mysql – SQL,其中condition只接收字段值中的一个单词

由于原因,我需要传递给where条件一个字符串而不是行的id.问题是条件只是以某种方式捕获所选值的第一个单词.例如,看看这段代码:

Lorem Ipsum Dolor

然后,通过回显last_query(),条件将显示:

... WHERE `table.column` = `Lorem` ...

而不是整个价值.

这是我的查询:

public function find_id_ano_modelo($marca, $modelo, $ano, $comb)

{

$this->db

->select('ano_modelo.id')

->join('modelo', 'modelo.id = ano_modelo.id_modelo')

->join('marca', 'marca.id_marca = modelo.id_marca')

->where('marca.id_marca', $marca)

->where('modelo.modelo', $modelo)

->where('ano_modelo.ano', $ano)

->where('ano_modelo.combustivel', $comb)

->where('marca.tipo = 1');

$query = $this->db->get($this->table);

echo $this->db->last_query();

if ($query) {

foreach ($query->result_array() as $q) {

return $q['id'];

}

}

}

这是我的编辑方法从我的控制器中调用的:

...

$marca = $this->input->post('id_marca');

$modelo = $this->input->post('id_modelo');

$ano = $this->input->post('ano');

$comb = $this->input->post('combustivel');

$data['id_ano_modelo'] = $this->Modelos_model->find_id_ano_modelo($marca, $modelo, $ano, $comb);

....

最佳答案 在

chat讨论之后,错误得以解决:

该请求是通过ajax调用发送的,下拉列表是使用以下内容构建的:

modelo.append('' + v.modelo + '');

问题是价值附近缺少双引号.没有它们,值的每个单词都被转换为html属性:

对于这个字符串:

QQ 1.0 ACT 12V 69cv 5p

这是生成的:

QQ 1.0 ACT FL 12V 69cv 5p

在这里添加qoutes解决了它:

modelo.append('' + v.modelo + '');

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值