SlideShare uma empresa Scribd logo
1 de 12
1	
Copyright (c) 株式会社HEART QUAKE All rights reserved .	
PHPとデータベースの連携2
2	
Copyright (c) 株式会社HEART QUAKE All rights reserved .	
処理理の流流れ
検索索条件を⼊入⼒力力する1 2 3
HTML
情報を受け取る&
SQLを実⾏行行する
情報を検索索する
PHP SQL
4 結果を返却する5 結果を受け取る&
結果を表⽰示する
3	
Copyright (c) 株式会社HEART QUAKE All rights reserved .	
今回もイメージで捉えましょう!
l  phpMyAdminでSQLを実⾏行行した時を思い出そう!
l  STEP① まずはログインして、データベースを選択
l  STEP② 次に実⾏行行したいSQLを記述
l  STEP③ 実⾏行行ボタンを押す
l  STEP④ 結果が表⽰示される
	
①〜③までは、INSERTの時と同様です。	
	
このステップをプログラムに変換します!
4	
Copyright (c) 株式会社HEART QUAKE All rights reserved .	
STEP①  ログインしてデータベースに接続
<?php
//まず、プログラムとデータベースとを接続
//サーバー名、ユーザー名、パスワードの順番で書いてあります
$connect = mysql_connect(”localhost”,”DBユーザ名”,”DBパスワード”);
//insert時の⽇日本語⽂文字化けを回避する
mysql_query(”SET NAMES utf8”,$connect);
/*
ここに続きを書いていきます。
*/
//最後にDBへの接続を切切断
mysql_close($connect);
?>
復復習
5	
Copyright (c) 株式会社HEART QUAKE All rights reserved .	
STEP②  次に実⾏行行したいSQLを記述
l  SQLを試そう
-  product_tblから全ての情報を取得する
-  「*」を使うことで全てのカラムの情報を取得できる
エラーがでなければ
OK!
6	
Copyright (c) 株式会社HEART QUAKE All rights reserved .	
STEP②  次に実⾏行行したいSQLを記述
<?php
$connect = mysql_connect(”localhost”,”DBユーザ名”,”DBパスワード”);
mysql_query(”SET NAMES utf8”,$connect);
/*
まずは先ほどうまくいったselect⽂文をPHPでechoしてみる。
ここではまだデータベースから取得できない。
*/
echo ”select * from product_tbl”;
mysql_close($connect);
?>
7	
Copyright (c) 株式会社HEART QUAKE All rights reserved .	
STEP③  実⾏行行ボタンを押す
<?php
$connect = mysql_connect(”localhost”,”DBユーザ名”,”DBパスワード”);
mysql_query(”SET NAMES utf8”,$connect);
/*
構⽂文 $result = mysql_db_query(DBデータベース名,実⾏行行したいSQL)
SQLから帰ってきた検索索結果を  変数$result に仮保存できる
※変数の名前はresultじゃなくてもOK
*/
$result = mysql_db_query(”DBデータベース名”,
”select * from product_tbl” );
mysql_close($connect);
?>
8	
Copyright (c) 株式会社HEART QUAKE All rights reserved .	
STEP④ 結果の表⽰示(1/4)
l  変数「$result」には何が⼊入ってるか?
-  resultにはSQLを実⾏行行した時の結果が表形式で⼊入っています。
$result = mysql_db_query(”DBデータベース名”,
”select * from product_tbl”);
result の中身
9	
Copyright (c) 株式会社HEART QUAKE All rights reserved .	
STEP④ 結果の表⽰示(2/4)
<?php
$connect = mysql_connect(”localhost”,”DBユーザ名”,”DBパスワード”);
mysql_query(”SET NAMES utf8”,$connect);
$result = mysql_db_query(”DBデータベース名”,”select * from product_tbl”);
/*
$resultには何⾏行行のデータが⼊入っているかはその都度度変わるので
while構⽂文を使って取得出来たデータ数分ループさせる
*/
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);
?>
10	
Copyright (c) 株式会社HEART QUAKE All rights reserved .	
STEP④ 結果の表⽰示(3/4)
l  mysql_fetch_assoc ってなにものですか?
-  mysql_fetch_assoc 関数の引数に$result変数をいれると、不不思議!                              
結果が1⾏行行ずつ取り出されて$kekkaに仮保存されていきます。
-  切切り取れなくなると$kekkaには空を表す null が⼊入ります。
$kekka = mysql_fetch_assoc($result);
1ループ⽬目
2ループ⽬目
11	
Copyright (c) 株式会社HEART QUAKE All rights reserved .	
STEP④ 結果の表⽰示(4/4)
l  mysql_fetch_assoc したあとに・・・
-  mysql_fetch_assoc 関数の引数に$result変数をいれると、不不思議!
結果が1⾏行行ずつ取り出されていき、$kekkaに1⾏行行分のデータが
格納されます。
-  $kekkaにデータベースのカラム名を指定すると、指定された
カラムのデータが取得できます。
  
$kekka = mysql_fetch_assoc($result);
if( $kekka== null ){
break;
}else{
echo $kekka[’product_name’];
echo $kekka[’price’];
echo ”<br>”;
}
product_̲tblの列列(カラム)名
12	
Copyright (c) 株式会社HEART QUAKE All rights reserved .	
お疲れ様でした!!

Mais conteúdo relacionado

Mais procurados

アプリからの情報を秘密裏にApacheのログに書き出す方法
アプリからの情報を秘密裏にApacheのログに書き出す方法アプリからの情報を秘密裏にApacheのログに書き出す方法
アプリからの情報を秘密裏にApacheのログに書き出す方法Yoshinori Teraoka
 
最近の PHP の話
最近の PHP の話最近の PHP の話
最近の PHP の話y-uti
 
20080617 05 Mysql
20080617 05 Mysql20080617 05 Mysql
20080617 05 Mysqlstiq 2e
 
PHPの今とこれから2016
PHPの今とこれから2016PHPの今とこれから2016
PHPの今とこれから2016Rui Hirokawa
 
PHPカンファレンス2016 初心者セッション
PHPカンファレンス2016 初心者セッションPHPカンファレンス2016 初心者セッション
PHPカンファレンス2016 初心者セッションHideo Kashioka
 
Prophecyを使ったユニットテスト
Prophecyを使ったユニットテスト Prophecyを使ったユニットテスト
Prophecyを使ったユニットテスト Akio Ishida
 
はじめてのPHP
はじめてのPHPはじめてのPHP
はじめてのPHPGo Tanaka
 
PHP、おまえだったのか。 いつもHTTPメッセージを 運んでくれたのは。
PHP、おまえだったのか。 いつもHTTPメッセージを 運んでくれたのは。PHP、おまえだったのか。 いつもHTTPメッセージを 運んでくれたのは。
PHP、おまえだったのか。 いつもHTTPメッセージを 運んでくれたのは。sasezaki
 
Webアプリ開発者のためのHTML5セキュリティ入門
Webアプリ開発者のためのHTML5セキュリティ入門Webアプリ開発者のためのHTML5セキュリティ入門
Webアプリ開発者のためのHTML5セキュリティ入門Muneaki Nishimura
 

Mais procurados (9)

アプリからの情報を秘密裏にApacheのログに書き出す方法
アプリからの情報を秘密裏にApacheのログに書き出す方法アプリからの情報を秘密裏にApacheのログに書き出す方法
アプリからの情報を秘密裏にApacheのログに書き出す方法
 
最近の PHP の話
最近の PHP の話最近の PHP の話
最近の PHP の話
 
20080617 05 Mysql
20080617 05 Mysql20080617 05 Mysql
20080617 05 Mysql
 
PHPの今とこれから2016
PHPの今とこれから2016PHPの今とこれから2016
PHPの今とこれから2016
 
PHPカンファレンス2016 初心者セッション
PHPカンファレンス2016 初心者セッションPHPカンファレンス2016 初心者セッション
PHPカンファレンス2016 初心者セッション
 
Prophecyを使ったユニットテスト
Prophecyを使ったユニットテスト Prophecyを使ったユニットテスト
Prophecyを使ったユニットテスト
 
はじめてのPHP
はじめてのPHPはじめてのPHP
はじめてのPHP
 
PHP、おまえだったのか。 いつもHTTPメッセージを 運んでくれたのは。
PHP、おまえだったのか。 いつもHTTPメッセージを 運んでくれたのは。PHP、おまえだったのか。 いつもHTTPメッセージを 運んでくれたのは。
PHP、おまえだったのか。 いつもHTTPメッセージを 運んでくれたのは。
 
Webアプリ開発者のためのHTML5セキュリティ入門
Webアプリ開発者のためのHTML5セキュリティ入門Webアプリ開発者のためのHTML5セキュリティ入門
Webアプリ開発者のためのHTML5セキュリティ入門
 

Destaque

Destaque (20)

ゼロプロ3周年
ゼロプロ3周年ゼロプロ3周年
ゼロプロ3周年
 
Ppt pune partand_parcel
Ppt pune partand_parcelPpt pune partand_parcel
Ppt pune partand_parcel
 
System1
System1System1
System1
 
Image register
Image registerImage register
Image register
 
Php embedded
Php embeddedPhp embedded
Php embedded
 
Mg2
Mg2Mg2
Mg2
 
D
DD
D
 
Api
ApiApi
Api
 
Db
DbDb
Db
 
Api twitter2
Api twitter2Api twitter2
Api twitter2
 
Youtube embedded
Youtube embeddedYoutube embedded
Youtube embedded
 
HEART QUAKEインターン
HEART QUAKEインターンHEART QUAKEインターン
HEART QUAKEインターン
 
Reservation
ReservationReservation
Reservation
 
Array facebook2
Array facebook2Array facebook2
Array facebook2
 
Api geocoding
Api geocodingApi geocoding
Api geocoding
 
Mg
MgMg
Mg
 
Menu
MenuMenu
Menu
 
Php1
Php1Php1
Php1
 
System4 detail
System4 detailSystem4 detail
System4 detail
 
Library login3
Library login3Library login3
Library login3
 

Semelhante a System2 for h

System2 ajax
System2 ajaxSystem2 ajax
System2 ajaxJun Chiba
 
System3 ajax
System3 ajaxSystem3 ajax
System3 ajaxJun Chiba
 
System4 comment
System4 commentSystem4 comment
System4 commentJun Chiba
 
Login facebook
Login facebookLogin facebook
Login facebookJun Chiba
 
Phpcon tokyo 20120_bigginer
Phpcon tokyo 20120_bigginerPhpcon tokyo 20120_bigginer
Phpcon tokyo 20120_bigginerHideo Kashioka
 
Session facebook
Session facebookSession facebook
Session facebookJun Chiba
 
Session phpuser
Session phpuserSession phpuser
Session phpuserJun Chiba
 
PHP と SAPI と ZendEngine3 と
PHP と SAPI と ZendEngine3 とPHP と SAPI と ZendEngine3 と
PHP と SAPI と ZendEngine3 とdo_aki
 
運用構築技術者の為のPSプログラミング第1回
運用構築技術者の為のPSプログラミング第1回運用構築技術者の為のPSプログラミング第1回
運用構築技術者の為のPSプログラミング第1回Shigeharu Yamaoka
 
Webシステムとちょっと便利なツール
Webシステムとちょっと便利なツールWebシステムとちょっと便利なツール
Webシステムとちょっと便利なツールMasashi Shinbara
 
System4 comment h
System4 comment hSystem4 comment h
System4 comment hJun Chiba
 
Intalio Cloud Workshop
Intalio Cloud Workshop Intalio Cloud Workshop
Intalio Cloud Workshop Daisuke Sugai
 
Array twitter
Array twitterArray twitter
Array twitterJun Chiba
 
SharePoint Framework をはじめよう #spfx
SharePoint Framework をはじめよう #spfxSharePoint Framework をはじめよう #spfx
SharePoint Framework をはじめよう #spfxHirofumi Ota
 

Semelhante a System2 for h (20)

System2 s1
System2 s1System2 s1
System2 s1
 
System s1
System s1System s1
System s1
 
System2 ajax
System2 ajaxSystem2 ajax
System2 ajax
 
System2
System2System2
System2
 
Php s3
Php s3Php s3
Php s3
 
System3 ajax
System3 ajaxSystem3 ajax
System3 ajax
 
System4 comment
System4 commentSystem4 comment
System4 comment
 
Login facebook
Login facebookLogin facebook
Login facebook
 
Phpcon tokyo 20120_bigginer
Phpcon tokyo 20120_bigginerPhpcon tokyo 20120_bigginer
Phpcon tokyo 20120_bigginer
 
Session facebook
Session facebookSession facebook
Session facebook
 
2009 PHP初心者
2009 PHP初心者2009 PHP初心者
2009 PHP初心者
 
Session phpuser
Session phpuserSession phpuser
Session phpuser
 
PHP と SAPI と ZendEngine3 と
PHP と SAPI と ZendEngine3 とPHP と SAPI と ZendEngine3 と
PHP と SAPI と ZendEngine3 と
 
運用構築技術者の為のPSプログラミング第1回
運用構築技術者の為のPSプログラミング第1回運用構築技術者の為のPSプログラミング第1回
運用構築技術者の為のPSプログラミング第1回
 
Webシステムとちょっと便利なツール
Webシステムとちょっと便利なツールWebシステムとちょっと便利なツール
Webシステムとちょっと便利なツール
 
System4 comment h
System4 comment hSystem4 comment h
System4 comment h
 
Session
SessionSession
Session
 
Intalio Cloud Workshop
Intalio Cloud Workshop Intalio Cloud Workshop
Intalio Cloud Workshop
 
Array twitter
Array twitterArray twitter
Array twitter
 
SharePoint Framework をはじめよう #spfx
SharePoint Framework をはじめよう #spfxSharePoint Framework をはじめよう #spfx
SharePoint Framework をはじめよう #spfx
 

Mais de Jun Chiba

セルフケア研修で使えるカードゲーム『攻略!きみのストレスを発見せよ!: ゲームで身につくストレスマネジメント』
セルフケア研修で使えるカードゲーム『攻略!きみのストレスを発見せよ!: ゲームで身につくストレスマネジメント』セルフケア研修で使えるカードゲーム『攻略!きみのストレスを発見せよ!: ゲームで身につくストレスマネジメント』
セルフケア研修で使えるカードゲーム『攻略!きみのストレスを発見せよ!: ゲームで身につくストレスマネジメント』Jun Chiba
 
答えのないコンセンサスゲーム「無人島での出来事」運営用パワーポイントスライド説明資料
答えのないコンセンサスゲーム「無人島での出来事」運営用パワーポイントスライド説明資料答えのないコンセンサスゲーム「無人島での出来事」運営用パワーポイントスライド説明資料
答えのないコンセンサスゲーム「無人島での出来事」運営用パワーポイントスライド説明資料Jun Chiba
 
合意形成(コンセンサス)ゲーム「月での遭難 in 2025」(NASAゲーム2025)
合意形成(コンセンサス)ゲーム「月での遭難 in 2025」(NASAゲーム2025)合意形成(コンセンサス)ゲーム「月での遭難 in 2025」(NASAゲーム2025)
合意形成(コンセンサス)ゲーム「月での遭難 in 2025」(NASAゲーム2025)Jun Chiba
 
システム思考、全体最適、SCMを体験から学ぶボードゲーム「ビールゲーム」概要説明資料
システム思考、全体最適、SCMを体験から学ぶボードゲーム「ビールゲーム」概要説明資料システム思考、全体最適、SCMを体験から学ぶボードゲーム「ビールゲーム」概要説明資料
システム思考、全体最適、SCMを体験から学ぶボードゲーム「ビールゲーム」概要説明資料Jun Chiba
 
財務・会計を楽しく学ぶビジネスゲーム型財務・会計研修「財務の虎Lv.1」の概要説明資料
財務・会計を楽しく学ぶビジネスゲーム型財務・会計研修「財務の虎Lv.1」の概要説明資料財務・会計を楽しく学ぶビジネスゲーム型財務・会計研修「財務の虎Lv.1」の概要説明資料
財務・会計を楽しく学ぶビジネスゲーム型財務・会計研修「財務の虎Lv.1」の概要説明資料Jun Chiba
 
プロジェクトマネジメントを疑似体験するボードゲーム型企業研修「プロジェクトテーマパーク」
プロジェクトマネジメントを疑似体験するボードゲーム型企業研修「プロジェクトテーマパーク」プロジェクトマネジメントを疑似体験するボードゲーム型企業研修「プロジェクトテーマパーク」
プロジェクトマネジメントを疑似体験するボードゲーム型企業研修「プロジェクトテーマパーク」Jun Chiba
 
バルーンバ人文化を探れ!パワーポイント・動画マニュアル販売用のスライドシェア資料
バルーンバ人文化を探れ!パワーポイント・動画マニュアル販売用のスライドシェア資料バルーンバ人文化を探れ!パワーポイント・動画マニュアル販売用のスライドシェア資料
バルーンバ人文化を探れ!パワーポイント・動画マニュアル販売用のスライドシェア資料Jun Chiba
 
内定者/新入社員向け ビジネスライティング研修用パワーポイントスライド販売用サンプル
内定者/新入社員向け ビジネスライティング研修用パワーポイントスライド販売用サンプル内定者/新入社員向け ビジネスライティング研修用パワーポイントスライド販売用サンプル
内定者/新入社員向け ビジネスライティング研修用パワーポイントスライド販売用サンプルJun Chiba
 
図形伝達ゲーム「グラコミ」
図形伝達ゲーム「グラコミ」図形伝達ゲーム「グラコミ」
図形伝達ゲーム「グラコミ」Jun Chiba
 
傾聴力を高めるビジネスゲーム「傾聴チャレンジ」
傾聴力を高めるビジネスゲーム「傾聴チャレンジ」傾聴力を高めるビジネスゲーム「傾聴チャレンジ」
傾聴力を高めるビジネスゲーム「傾聴チャレンジ」Jun Chiba
 
無料アイスブレイクスライドサンプル
無料アイスブレイクスライドサンプル無料アイスブレイクスライドサンプル
無料アイスブレイクスライドサンプルJun Chiba
 
ストレスマネジメント体験ゲーム「ストマネ」
ストレスマネジメント体験ゲーム「ストマネ」ストレスマネジメント体験ゲーム「ストマネ」
ストレスマネジメント体験ゲーム「ストマネ」Jun Chiba
 
ベストチームオンライン説明スライド
ベストチームオンライン説明スライドベストチームオンライン説明スライド
ベストチームオンライン説明スライドJun Chiba
 
死の疑似体験ワーク 対面版
死の疑似体験ワーク 対面版死の疑似体験ワーク 対面版
死の疑似体験ワーク 対面版Jun Chiba
 
地図作成ゲーム「ジグソータウン」説明資料
地図作成ゲーム「ジグソータウン」説明資料地図作成ゲーム「ジグソータウン」説明資料
地図作成ゲーム「ジグソータウン」説明資料Jun Chiba
 
プロジェクトテーマパーク説明資料
プロジェクトテーマパーク説明資料プロジェクトテーマパーク説明資料
プロジェクトテーマパーク説明資料Jun Chiba
 
死の疑似体験ワーク(対面版)説明資料
死の疑似体験ワーク(対面版)説明資料死の疑似体験ワーク(対面版)説明資料
死の疑似体験ワーク(対面版)説明資料Jun Chiba
 
ヘリウムリング&フープリレー
ヘリウムリング&フープリレーヘリウムリング&フープリレー
ヘリウムリング&フープリレーJun Chiba
 
世界記録を目指すマシュマロチャレンジ
世界記録を目指すマシュマロチャレンジ世界記録を目指すマシュマロチャレンジ
世界記録を目指すマシュマロチャレンジJun Chiba
 
相互理解ワークショップ、内定者懇親会で使えるワークスタイルトランプ
相互理解ワークショップ、内定者懇親会で使えるワークスタイルトランプ相互理解ワークショップ、内定者懇親会で使えるワークスタイルトランプ
相互理解ワークショップ、内定者懇親会で使えるワークスタイルトランプJun Chiba
 

Mais de Jun Chiba (20)

セルフケア研修で使えるカードゲーム『攻略!きみのストレスを発見せよ!: ゲームで身につくストレスマネジメント』
セルフケア研修で使えるカードゲーム『攻略!きみのストレスを発見せよ!: ゲームで身につくストレスマネジメント』セルフケア研修で使えるカードゲーム『攻略!きみのストレスを発見せよ!: ゲームで身につくストレスマネジメント』
セルフケア研修で使えるカードゲーム『攻略!きみのストレスを発見せよ!: ゲームで身につくストレスマネジメント』
 
答えのないコンセンサスゲーム「無人島での出来事」運営用パワーポイントスライド説明資料
答えのないコンセンサスゲーム「無人島での出来事」運営用パワーポイントスライド説明資料答えのないコンセンサスゲーム「無人島での出来事」運営用パワーポイントスライド説明資料
答えのないコンセンサスゲーム「無人島での出来事」運営用パワーポイントスライド説明資料
 
合意形成(コンセンサス)ゲーム「月での遭難 in 2025」(NASAゲーム2025)
合意形成(コンセンサス)ゲーム「月での遭難 in 2025」(NASAゲーム2025)合意形成(コンセンサス)ゲーム「月での遭難 in 2025」(NASAゲーム2025)
合意形成(コンセンサス)ゲーム「月での遭難 in 2025」(NASAゲーム2025)
 
システム思考、全体最適、SCMを体験から学ぶボードゲーム「ビールゲーム」概要説明資料
システム思考、全体最適、SCMを体験から学ぶボードゲーム「ビールゲーム」概要説明資料システム思考、全体最適、SCMを体験から学ぶボードゲーム「ビールゲーム」概要説明資料
システム思考、全体最適、SCMを体験から学ぶボードゲーム「ビールゲーム」概要説明資料
 
財務・会計を楽しく学ぶビジネスゲーム型財務・会計研修「財務の虎Lv.1」の概要説明資料
財務・会計を楽しく学ぶビジネスゲーム型財務・会計研修「財務の虎Lv.1」の概要説明資料財務・会計を楽しく学ぶビジネスゲーム型財務・会計研修「財務の虎Lv.1」の概要説明資料
財務・会計を楽しく学ぶビジネスゲーム型財務・会計研修「財務の虎Lv.1」の概要説明資料
 
プロジェクトマネジメントを疑似体験するボードゲーム型企業研修「プロジェクトテーマパーク」
プロジェクトマネジメントを疑似体験するボードゲーム型企業研修「プロジェクトテーマパーク」プロジェクトマネジメントを疑似体験するボードゲーム型企業研修「プロジェクトテーマパーク」
プロジェクトマネジメントを疑似体験するボードゲーム型企業研修「プロジェクトテーマパーク」
 
バルーンバ人文化を探れ!パワーポイント・動画マニュアル販売用のスライドシェア資料
バルーンバ人文化を探れ!パワーポイント・動画マニュアル販売用のスライドシェア資料バルーンバ人文化を探れ!パワーポイント・動画マニュアル販売用のスライドシェア資料
バルーンバ人文化を探れ!パワーポイント・動画マニュアル販売用のスライドシェア資料
 
内定者/新入社員向け ビジネスライティング研修用パワーポイントスライド販売用サンプル
内定者/新入社員向け ビジネスライティング研修用パワーポイントスライド販売用サンプル内定者/新入社員向け ビジネスライティング研修用パワーポイントスライド販売用サンプル
内定者/新入社員向け ビジネスライティング研修用パワーポイントスライド販売用サンプル
 
図形伝達ゲーム「グラコミ」
図形伝達ゲーム「グラコミ」図形伝達ゲーム「グラコミ」
図形伝達ゲーム「グラコミ」
 
傾聴力を高めるビジネスゲーム「傾聴チャレンジ」
傾聴力を高めるビジネスゲーム「傾聴チャレンジ」傾聴力を高めるビジネスゲーム「傾聴チャレンジ」
傾聴力を高めるビジネスゲーム「傾聴チャレンジ」
 
無料アイスブレイクスライドサンプル
無料アイスブレイクスライドサンプル無料アイスブレイクスライドサンプル
無料アイスブレイクスライドサンプル
 
ストレスマネジメント体験ゲーム「ストマネ」
ストレスマネジメント体験ゲーム「ストマネ」ストレスマネジメント体験ゲーム「ストマネ」
ストレスマネジメント体験ゲーム「ストマネ」
 
ベストチームオンライン説明スライド
ベストチームオンライン説明スライドベストチームオンライン説明スライド
ベストチームオンライン説明スライド
 
死の疑似体験ワーク 対面版
死の疑似体験ワーク 対面版死の疑似体験ワーク 対面版
死の疑似体験ワーク 対面版
 
地図作成ゲーム「ジグソータウン」説明資料
地図作成ゲーム「ジグソータウン」説明資料地図作成ゲーム「ジグソータウン」説明資料
地図作成ゲーム「ジグソータウン」説明資料
 
プロジェクトテーマパーク説明資料
プロジェクトテーマパーク説明資料プロジェクトテーマパーク説明資料
プロジェクトテーマパーク説明資料
 
死の疑似体験ワーク(対面版)説明資料
死の疑似体験ワーク(対面版)説明資料死の疑似体験ワーク(対面版)説明資料
死の疑似体験ワーク(対面版)説明資料
 
ヘリウムリング&フープリレー
ヘリウムリング&フープリレーヘリウムリング&フープリレー
ヘリウムリング&フープリレー
 
世界記録を目指すマシュマロチャレンジ
世界記録を目指すマシュマロチャレンジ世界記録を目指すマシュマロチャレンジ
世界記録を目指すマシュマロチャレンジ
 
相互理解ワークショップ、内定者懇親会で使えるワークスタイルトランプ
相互理解ワークショップ、内定者懇親会で使えるワークスタイルトランプ相互理解ワークショップ、内定者懇親会で使えるワークスタイルトランプ
相互理解ワークショップ、内定者懇親会で使えるワークスタイルトランプ
 

System2 for h

  • 1. 1 Copyright (c) 株式会社HEART QUAKE All rights reserved . PHPとデータベースの連携2
  • 2. 2 Copyright (c) 株式会社HEART QUAKE All rights reserved . 処理理の流流れ 検索索条件を⼊入⼒力力する1 2 3 HTML 情報を受け取る& SQLを実⾏行行する 情報を検索索する PHP SQL 4 結果を返却する5 結果を受け取る& 結果を表⽰示する
  • 3. 3 Copyright (c) 株式会社HEART QUAKE All rights reserved . 今回もイメージで捉えましょう! l  phpMyAdminでSQLを実⾏行行した時を思い出そう! l  STEP① まずはログインして、データベースを選択 l  STEP② 次に実⾏行行したいSQLを記述 l  STEP③ 実⾏行行ボタンを押す l  STEP④ 結果が表⽰示される ①〜③までは、INSERTの時と同様です。 このステップをプログラムに変換します!
  • 4. 4 Copyright (c) 株式会社HEART QUAKE All rights reserved . STEP①  ログインしてデータベースに接続 <?php //まず、プログラムとデータベースとを接続 //サーバー名、ユーザー名、パスワードの順番で書いてあります $connect = mysql_connect(”localhost”,”DBユーザ名”,”DBパスワード”); //insert時の⽇日本語⽂文字化けを回避する mysql_query(”SET NAMES utf8”,$connect); /* ここに続きを書いていきます。 */ //最後にDBへの接続を切切断 mysql_close($connect); ?> 復復習
  • 5. 5 Copyright (c) 株式会社HEART QUAKE All rights reserved . STEP②  次に実⾏行行したいSQLを記述 l  SQLを試そう -  product_tblから全ての情報を取得する -  「*」を使うことで全てのカラムの情報を取得できる エラーがでなければ OK!
  • 6. 6 Copyright (c) 株式会社HEART QUAKE All rights reserved . STEP②  次に実⾏行行したいSQLを記述 <?php $connect = mysql_connect(”localhost”,”DBユーザ名”,”DBパスワード”); mysql_query(”SET NAMES utf8”,$connect); /* まずは先ほどうまくいったselect⽂文をPHPでechoしてみる。 ここではまだデータベースから取得できない。 */ echo ”select * from product_tbl”; mysql_close($connect); ?>
  • 7. 7 Copyright (c) 株式会社HEART QUAKE All rights reserved . STEP③  実⾏行行ボタンを押す <?php $connect = mysql_connect(”localhost”,”DBユーザ名”,”DBパスワード”); mysql_query(”SET NAMES utf8”,$connect); /* 構⽂文 $result = mysql_db_query(DBデータベース名,実⾏行行したいSQL) SQLから帰ってきた検索索結果を  変数$result に仮保存できる ※変数の名前はresultじゃなくてもOK */ $result = mysql_db_query(”DBデータベース名”, ”select * from product_tbl” ); mysql_close($connect); ?>
  • 8. 8 Copyright (c) 株式会社HEART QUAKE All rights reserved . STEP④ 結果の表⽰示(1/4) l  変数「$result」には何が⼊入ってるか? -  resultにはSQLを実⾏行行した時の結果が表形式で⼊入っています。 $result = mysql_db_query(”DBデータベース名”, ”select * from product_tbl”); result の中身
  • 9. 9 Copyright (c) 株式会社HEART QUAKE All rights reserved . STEP④ 結果の表⽰示(2/4) <?php $connect = mysql_connect(”localhost”,”DBユーザ名”,”DBパスワード”); mysql_query(”SET NAMES utf8”,$connect); $result = mysql_db_query(”DBデータベース名”,”select * from product_tbl”); /* $resultには何⾏行行のデータが⼊入っているかはその都度度変わるので while構⽂文を使って取得出来たデータ数分ループさせる */ 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); ?>
  • 10. 10 Copyright (c) 株式会社HEART QUAKE All rights reserved . STEP④ 結果の表⽰示(3/4) l  mysql_fetch_assoc ってなにものですか? -  mysql_fetch_assoc 関数の引数に$result変数をいれると、不不思議!                               結果が1⾏行行ずつ取り出されて$kekkaに仮保存されていきます。 -  切切り取れなくなると$kekkaには空を表す null が⼊入ります。 $kekka = mysql_fetch_assoc($result); 1ループ⽬目 2ループ⽬目
  • 11. 11 Copyright (c) 株式会社HEART QUAKE All rights reserved . STEP④ 結果の表⽰示(4/4) l  mysql_fetch_assoc したあとに・・・ -  mysql_fetch_assoc 関数の引数に$result変数をいれると、不不思議! 結果が1⾏行行ずつ取り出されていき、$kekkaに1⾏行行分のデータが 格納されます。 -  $kekkaにデータベースのカラム名を指定すると、指定された カラムのデータが取得できます。    $kekka = mysql_fetch_assoc($result); if( $kekka== null ){ break; }else{ echo $kekka[’product_name’]; echo $kekka[’price’]; echo ”<br>”; } product_̲tblの列列(カラム)名
  • 12. 12 Copyright (c) 株式会社HEART QUAKE All rights reserved . お疲れ様でした!!