登録時の文字は以下のようなエスケープをした場合。
INSERT $stmt = $pdo -> prepare(....); $stmt->bindValue(':value', $value, PDO::PARAM_STR); $stmt->execute();
仮に上のような実装で「あいう」とゆう文字を登録したとします。
単純に「あいう」とゆう文字を抜き取る場合
//send.js var searchval="data=あいう"; XmlHttpRequest.send(searchval); //receive_server.php if(isset($_POST['data'])){ $data=$_POST['data']; $sql=<<<SQL select * from table where val= :i ; SQL; $stmt =$pdo ->prepare($sql); $stmt ->bindValue(':i',$data,PDO::PARAM_STR); $stmt ->execute(); $res=$stmt ->fetch(); echo $res;
としても一度変換されているようで検索できません。
どうやったら検索の際ヒットしますか?(最初に書いた登録時も同じようにvar data="あいう"のような値を受け取り、そのままbindValueで対応させたものを登録したとします。)
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/05/12 16:03
2017/05/12 16:08
2017/05/12 18:45 編集