PHP と SQLite を使って簡単な検索フォームを作成しようとしています
検索ワードを部分一致するモノをDBから取得しようとしているのですがうまく行かず困っております。
DB Browser で中身の確認やSQL文を実行してみたら、どうやら正常に動作しているようです
こういうときどのような理由が考えられるのでしょうか?
アドバイスよろしくお願いします
php
1 2<?php 3 try{ 4 $search = $_POST["search"]; 5 $pdo = new PDO('sqlite:test.db'); 6 7 if (isset($pdo)){ 8 echo "dbok"; 9 } 10 11 // SQL実行時にもエラーの代わりに例外を投げるように設定 12 $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 13 // デフォルトのフェッチモードを連想配列形式に設定 14 $pdo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC); 15 16 // 検索 (プリペアドステートメント) 17 $search = "%$search%"; 18 echo "search = ".$search; 19 $stmt = $pdo->prepare("select * from info where title like ?"); 20 21 $stmt->execute(array("%$search%")); 22 $res = $stmt->fetchAll(); 23 24 var_dump($res); 25 } 26 catch (Exception $e){ 27 $err_msg = "申し訳ありませんが、エラーが発生しました"; 28 echo $err_msg; 29 exit(); 30 } 31 32?>
回答1件
あなたの回答
tips
プレビュー