【发布时间】:2015-11-07 04:59:09
【问题描述】:
所以我尝试接收一个 PHP 变量并将其插入到一个简单的 sql 查询中,但它不起作用,我似乎无法找出问题所在。
注意:我知道此代码存在安全问题
staff_model.php 文件:
function getSearches($searchterm) {
$sql = "SELECT *
FROM people
WHERE name
LIKE '%{$searchterm}%'";
$query = $this->db->query($sql);
return $query;
}
我的表有几列,但它有 id、name、subject、type 等列。我得到 $searchterm 的方式类似于
var searchText = document.getElementById('custom-search-text').value;
在我的 javascript 文件中,我会将其传递给 users.php
$.get(url+"/api/users/staff", {id: id, name: name, type: type, subject: subject, search: searchText})
为了确保其他一切正常,我为 searchTerm 硬编码了一些东西(比如$sql = "SELECT * FROM people WHERE name LIKE 'Matt'"),我确实得到了正确的结果。
我尝试过的其他方法是 $sql = "SELECT * FROM people WHERE name LIKE $searchTerm",但没有成功。
关于如何让它与通配符一起工作的任何想法?
【问题讨论】:
-
试试这个:- $sql = "SELECT * FROM people WHERE name LIKE '$searchTerm' "
-
@AnkurTiwari 结果返回为空
-
仅使用“SELECT * FROM people LIMIT 10”会产生什么结果?