【问题标题】:How can I fix error syntax when using postman?使用邮递员时如何修复错误语法?
【发布时间】:2019-12-07 13:08:14
【问题描述】:

我正在为 Web 的 REST API 工作并使用 codeigniter。 我有这样的代码

$data = $this->verify_request();
$param = $this->get('param');
$val = $this->get('val');
$operator = $this->db->query("SELECT *FROM `operator` WHERE " . $param . " = '" . $val . "'")->result();
$this->response($operator, 200);

在我的程序中我没有出错

但是当我尝试使用邮递员获取它时,我遇到了这样的错误

谁能帮帮我?

【问题讨论】:

  • *FROM 之间需要不必要的引号和空格:- $operator = $this->db->query("SELECT * FROM operator WHERE $param = $val;")->结果();
  • 你传递了 $param 和 $val 还是空白?
  • 显示邮递员请求。
  • 你不应该像这样使用codeigniter。参数化您的查询。 codeigniter.com/user_guide/database/queries.html#query-bindings

标签: php mysql rest codeigniter


【解决方案1】:

获取参数有问题

$val = $this->get('val');
$operator = $this->db->query("SELECT *FROM `operator` WHERE " . $param . " = '" . $val . "'")->result();

尝试使用var_dump($val) 进行调试,它不是来自您发出请求的地方。如果$this->get('val'); 中存在您的价值,您的问题将得到解决。

$param = $this->get('param');param 中也没有任何价值

您的查询如下所示。

SELECT * FROM operator WHERE = ''

前后没有比较值。检查您从表单或邮递员传递的值。

【讨论】:

    猜你喜欢
    • 2018-12-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-10
    相关资源
    最近更新 更多