1 
検索索機能 
Copyright (c) 株式会社HEART QUAKE All rights reserved .
2 
処理理の流流れ(検索索) 
1検索索条件を⼊入⼒力力する23 
HTML 
Copyright (c) 株式会社HEART QUAKE All rights reserved . 
HTMLから情報をもらう 
&検索索条件を使って 
SELECTを実⾏行行 
情報を検索索する 
5データベースから4結果を送る 
データをもらう& 
画⾯面に表⽰示 
PHPSQL
3 
検索索条件⼊入⼒力力フォーム 
h1検索ページ/h1 
form action=”product_search.php” method=”GET” 
製品ID(完全一致) 
input type=”text” name=”product_id” brbr 
製品名(含む検索) 
input type=”text” name=”product_name” brbr 
input type=”submit” value=”検索” 
/form 
Copyright (c) 株式会社HEART QUAKE All rights reserved . 
HTML 
復復習
4 
STEP④ 結果の表⽰示(2/5) 
復復習 
?php 
$connect = mysql_connect(”localhost”,”b1_sato”,”b1_sato”); 
mysql_query(”SET NAMES utf8”,$connect); 
$result = mysql_db_query(”b1_sato” , ”select * from product_tbl” ); 
while(true) {//無限に繰り返せ 
$kekka = mysql_fetch_assoc($result); //$resultから1⾏行行⽂文切切り取る 
if( $kekka == null ){ //もし、$kekka が 空(から)=null だったら 
break; //ループを脱出 
}else{ //$kekka が 空(から)でなかったら 
echo $kekka[’product_name’]; //切切り取ったデータのうちの製品名を表⽰示 
echo ”br”; 
} 
} 
mysql_close($connect); 
? 
Copyright (c) 株式会社HEART QUAKE All rights reserved .
5 
検索索を含むPHPでのSQLの実⾏行行 
?php 
$connect = mysql_connect(”localhost”,”b1_sato”,”b1_sato”); 
mysql_query(”SET NAMES utf8”,$connect); 
$result = mysql_db_query(”b1_sato” , 
”select * from product_tbl where product_id = 1 ” ); 
while(true) {//無限に繰り返せ 
$kekka = mysql_fetch_assoc($result); //$resultから1⾏行行⽂文切切り取る 
if( $kekka == null ){ //もし、$kekka が 空(から)=null だったら 
//以下省省略略 
? 
Copyright (c) 株式会社HEART QUAKE All rights reserved . 
SQLにwhere⽂文をつける。
6 
検索索を含むPHPでのSQLの実⾏行行 
?php 
$connect = mysql_connect(”localhost”,”b1_sato”,” b1_sato”); 
mysql_query(”SET NAMES utf8”,$connect); 
$result = mysql_db_query(”b1_sato” , 
”select * from product_tbl 
where product_id = {$_GET[’product_id’]} ” ); 
while(true) { 
//以下省省略略 
? 
Copyright (c) 株式会社HEART QUAKE All rights reserved . 
HTMLと連動させ、 
HTMLから受け取った製品ID 
を検索索条件に反映させる。 
ダブルクォーテの中で$_GET 
を使う際は{ } で囲む
7 
検索索を含むPHPでのSQLの実⾏行行 
?php 
$connect = mysql_connect(”localhost”,”b1_sato”,” b1_sato”); 
mysql_query(”SET NAMES utf8”,$connect); 
$result = mysql_db_query(”b1_sato” , 
”select * from product_tbl 
where product_name like ’%バス%’” ); 
while(true) { 
//以下省省略略 
? 
Copyright (c) 株式会社HEART QUAKE All rights reserved . 
含む検索索の場合は 
カラム名 like ‘%検索索したい⽂文字%’ 
となる。
8 
検索索を含むPHPでのSQLの実⾏行行 
?php 
$connect = mysql_connect(”localhost”,”b1_sato”,” b1_sato”); 
mysql_query(”SET NAMES utf8”,$connect); 
$result = mysql_db_query(”b1_sato” , 
”select * from product_tbl 
where product_name like ’%{$_GET[’product_name’]}%’” ); 
while(true) { 
//以下省省略略 
? 
Copyright (c) 株式会社HEART QUAKE All rights reserved . 
カラム名 like ‘%検索索したい⽂文字%’ 
の「検索索したい⽂文字」部分を 
{$_GET[‘HTMLで指定したタグ名’]} 
とする。
9 
検索索システムの完成 
//省省略略 
mysql_query(”SET NAMES utf8”,$connect); 
if($_GET[’product_id’] != ””){ 
$result = mysql_db_query(”b1_sato” , ”select * from product_tbl 
where product_id = {$_GET[’product’]} ” ); 
} 
else if($_GET[’product_name’] != ””){ 
$result = mysql_db_query(”b1_sato” , ”select * from product_tbl 
where product_name like ’%{$_GET[’product_name’]}%’” ); 
} 
while(true) { 
//以下省省略略 
? 
Copyright (c) 株式会社HEART QUAKE All rights reserved . 
もし、製品IDが空⽩白じゃなかったら 
つまり、製品IDが条件指定されていたら
10 
お疲れ様でした!! 
Copyright (c) 株式会社HEART QUAKE All rights reserved .

System3 search

  • 1.
    1 検索索機能 Copyright(c) 株式会社HEART QUAKE All rights reserved .
  • 2.
    2 処理理の流流れ(検索索) 1検索索条件を⼊入⼒力力する23 HTML Copyright (c) 株式会社HEART QUAKE All rights reserved . HTMLから情報をもらう &検索索条件を使って SELECTを実⾏行行 情報を検索索する 5データベースから4結果を送る データをもらう& 画⾯面に表⽰示 PHPSQL
  • 3.
    3 検索索条件⼊入⼒力力フォーム h1検索ページ/h1 form action=”product_search.php” method=”GET” 製品ID(完全一致) input type=”text” name=”product_id” brbr 製品名(含む検索) input type=”text” name=”product_name” brbr input type=”submit” value=”検索” /form Copyright (c) 株式会社HEART QUAKE All rights reserved . HTML 復復習
  • 4.
    4 STEP④ 結果の表⽰示(2/5) 復復習 ?php $connect = mysql_connect(”localhost”,”b1_sato”,”b1_sato”); mysql_query(”SET NAMES utf8”,$connect); $result = mysql_db_query(”b1_sato” , ”select * from product_tbl” ); while(true) {//無限に繰り返せ $kekka = mysql_fetch_assoc($result); //$resultから1⾏行行⽂文切切り取る if( $kekka == null ){ //もし、$kekka が 空(から)=null だったら break; //ループを脱出 }else{ //$kekka が 空(から)でなかったら echo $kekka[’product_name’]; //切切り取ったデータのうちの製品名を表⽰示 echo ”br”; } } mysql_close($connect); ? Copyright (c) 株式会社HEART QUAKE All rights reserved .
  • 5.
    5 検索索を含むPHPでのSQLの実⾏行行 ?php $connect = mysql_connect(”localhost”,”b1_sato”,”b1_sato”); mysql_query(”SET NAMES utf8”,$connect); $result = mysql_db_query(”b1_sato” , ”select * from product_tbl where product_id = 1 ” ); while(true) {//無限に繰り返せ $kekka = mysql_fetch_assoc($result); //$resultから1⾏行行⽂文切切り取る if( $kekka == null ){ //もし、$kekka が 空(から)=null だったら //以下省省略略 ? Copyright (c) 株式会社HEART QUAKE All rights reserved . SQLにwhere⽂文をつける。
  • 6.
    6 検索索を含むPHPでのSQLの実⾏行行 ?php $connect = mysql_connect(”localhost”,”b1_sato”,” b1_sato”); mysql_query(”SET NAMES utf8”,$connect); $result = mysql_db_query(”b1_sato” , ”select * from product_tbl where product_id = {$_GET[’product_id’]} ” ); while(true) { //以下省省略略 ? Copyright (c) 株式会社HEART QUAKE All rights reserved . HTMLと連動させ、 HTMLから受け取った製品ID を検索索条件に反映させる。 ダブルクォーテの中で$_GET を使う際は{ } で囲む
  • 7.
    7 検索索を含むPHPでのSQLの実⾏行行 ?php $connect = mysql_connect(”localhost”,”b1_sato”,” b1_sato”); mysql_query(”SET NAMES utf8”,$connect); $result = mysql_db_query(”b1_sato” , ”select * from product_tbl where product_name like ’%バス%’” ); while(true) { //以下省省略略 ? Copyright (c) 株式会社HEART QUAKE All rights reserved . 含む検索索の場合は カラム名 like ‘%検索索したい⽂文字%’ となる。
  • 8.
    8 検索索を含むPHPでのSQLの実⾏行行 ?php $connect = mysql_connect(”localhost”,”b1_sato”,” b1_sato”); mysql_query(”SET NAMES utf8”,$connect); $result = mysql_db_query(”b1_sato” , ”select * from product_tbl where product_name like ’%{$_GET[’product_name’]}%’” ); while(true) { //以下省省略略 ? Copyright (c) 株式会社HEART QUAKE All rights reserved . カラム名 like ‘%検索索したい⽂文字%’ の「検索索したい⽂文字」部分を {$_GET[‘HTMLで指定したタグ名’]} とする。
  • 9.
    9 検索索システムの完成 //省省略略 mysql_query(”SET NAMES utf8”,$connect); if($_GET[’product_id’] != ””){ $result = mysql_db_query(”b1_sato” , ”select * from product_tbl where product_id = {$_GET[’product’]} ” ); } else if($_GET[’product_name’] != ””){ $result = mysql_db_query(”b1_sato” , ”select * from product_tbl where product_name like ’%{$_GET[’product_name’]}%’” ); } while(true) { //以下省省略略 ? Copyright (c) 株式会社HEART QUAKE All rights reserved . もし、製品IDが空⽩白じゃなかったら つまり、製品IDが条件指定されていたら
  • 10.
    10 お疲れ様でした!! Copyright(c) 株式会社HEART QUAKE All rights reserved .