私はこのコードを持っています(その一部だけ):
<?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 ファイルは、検索するためのキーを取得します。私はaddslashesによってキーをエスケープし、mysqlクエリを実行して検索します。しかし、key = % # _ + で検索すると、代わりにすべてのテーブルが出力され、一致する結果はありません。キーを正しい方法でエスケープしなかったと思いますので、% # _ + などの文字をエスケープして LIKE で mysql クエリを実行するにはどうすればよいですか? 私を助けてください ?別の質問を見ましたが、まだわかりません