質問: こんにちは。現在PHPを独学で学習しています。 現在、データベースにある情報を複数の条件で検索したいのですが、検索結果が表示されません。 具体的に、htmlは表示されますが、検索結果(データベースに入っている情報)が表示されません。 表示されないのは何故なのか、もしお分かりの方がいましたら、ご教授ください。 1. SQLが発行できていない 2. データベースに接続できていない。 3. その他 もしくは、現在のコードをベースに、複数検索できるコードがありましたら、教えて頂けますでしょうか。 **現在のコード** ``` 顧客番号: 担当者: ステータス: 名前: キャンパス: コース開始日: ``` **searchtest.php** ``` prepare($sql); $stmt->execute($data); } ?> ``` よろしくお願いいたします。
回答: ``` $stmt->execute($data); ``` でexecuteした後、何もしてないですね。 ``` while($result = $stmt->fetch(PDO::FETCH_ASSOC)){ // ここでresultに1列のデータが取れます } ``` のように、データを受け取りましょう。 ただ、最近はRDB周りはフレームワークで専用のモジュールを使うので、 実務だとあまりPDOStatement自体使わないと思います。 また、このような質問がstackoverflowに上がることに疑問があります。 教材はちゃんとしたものを使っていますか?見直したほうがいい気がします。 Webで勉強できるからと思わず、ちゃんと本なりprogate使ったりしたほうが効率がいいですよ。 ちゃんとした教材であれば ``` $stmt = $pdo->prepare($selectQuery); $stmt->execute($data); while($result = $stmt->fetch(PDO::FETCH_ASSOC)){ } ``` はセットで出てくるはずです。