问题:
转到:http://www.englishact.com/Quotations/allquotgr.php
如果您搜索Bl?ue
,则会显示一些结果。
但是,如果您搜索Bl?ue 's
,则不会有任何结果。
但我的mysql表包含'
[quote]
所有版本的quotation pages
示例:
http://www.englishact.com/Quotations/allquot.php] 2
[http://www.englishact.com/Quotations/allquotfr.php
我的代码:
if(isset($_GET['quotation'])){
$puty = $_GET['quotation'];
$put = urldecode($_GET['quotation']);
$sql = "SELECT * FROM `gr` WHERE `quot` LIKE '%".$put."%' OR `author` LIKE '%".$put."%'";
}
$result = mysqli_query($con,$sql);
while ($row = mysqli_fetch_array($result)) {
$quot[] = $row;
}
我认为问题在上面的代码中。
答案 0 :(得分:0)
这是每个人都告诉你的事情:
if(isset($_GET['quotation'])){
$con=new mysqli("localhost","username","password","database"); // use your details obviously
if($stmt=$con->prepare("SELECT * FROM `gr` WHERE `quot` LIKE ? OR `author` LIKE ?")){
$p1=$p2="%{$_GET['quotation']}%"; // wrap the values with % for LIKE
$stmt->bind_param("ss",$p1,$p2);
$stmt->execute();
$result=$stmt->get_result();
while($row=$result->fetch_array(MYSQLI_ASSOC)){
$quot[] = $row;
}
}else{
echo mysqli_error($con);
}
}
这将保护您的查询并解决您的问题。