我有这段代码(只是其中的一部分):
<?php
if(isset($_GET['act']) && $_GET['act']== 'do') {
$key= $_POST['key'];
}
else {
$key= '';
}
?>
<input class='inputField' type='text' name='key' size=45 value='<?php echo $key;?>' >
<script>$(document).ready(function(){
key= $("#mainTop input").val();
if(key!= null || key== '%') {
showPage(1,key);
}
else {
showPage(1);
}
});
</script>
showpage() 将获取参数并传递给 php 文件:
if(isset($_GET['key'])) {
$key= addslashes($_GET['key']);
}
else {
$key= null;
}
$result= $db->query("SELECT * FROM information WHERE stuId LIKE '%$key%' OR stuName LIKE '%$key%' LIMIT $start,10");
php 文件将获得搜索的密钥。我通过添加斜杠转义密钥,执行 mysql 查询进行搜索。但是如果我用 key = % # _ + 搜索,它仍然会打印我们所有的表,而不是没有匹配的结果。我想我没有以正确的方式转义密钥,那么如何转义 % # _ + 等字符以使用 LIKE 进行 mysql 查询?请帮帮我?我看了另一个问题,但我还是不明白