我很想接收带有查询的数据。查询可以在我的数据库中的任何列中,但是我只想获取来自同一国家/地区的数据。它不起作用。
网址如下:search.php?query = econ& country = England
所以查询是:“econ” 这个国家是“英格兰”
任何包含经济的东西都将被收集,如果它也来自英国......
首先我从网址
获取变量$searchQuery = $_GET['query'];
$searchCountry = $_GET['country'];
这是我的SQL
SELECT * from sbEvents
WHERE EventCountry = ?
AND (Name LIKE ?
OR Description LIKE ?
OR Address LIKE ?
OR Author LIKE ?)
然后我用
填充它$stmt = $db->prepare($sth);
$stmt->execute(array($searchCountry, $searchQuery, $searchQuery, $searchQuery, $searchQuery));
$result = $stmt->fetchAll(PDO::FETCH_ASSOC);
然后很明显我把它打印成JSON。这有效,如果我删除国家部分(所以它不是其他出错的东西)我相信这是我的SQL结构,即:和(或LIKE?)
答案 0 :(得分:0)
是的,like子句需要%string%。
$sq = "%$searchQuery%";
$stmt->execute(array($searchCountry, $sq, $sq, $sq, $sq));