Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Accessing MySQL from PHP
Search
LucienLee
July 09, 2013
Programming
1
370
Accessing MySQL from PHP
Fundamental PHP & Web Development
LucienLee
July 09, 2013
Tweet
Share
More Decks by LucienLee
See All by LucienLee
SASS & Compass 101
lucienlee
1
300
Use PaaS service to host your web - with pagodabox
lucienlee
0
82
final album
lucienlee
0
73
Simple Album
lucienlee
0
94
DataBase and MySQL
lucienlee
1
230
PHP 101+1:function & form
lucienlee
1
290
PHP 101: flow control
lucienlee
0
330
Start to Build your Web
lucienlee
1
430
既然如此,那我們來hack資本世界吧!
lucienlee
0
160
Other Decks in Programming
See All in Programming
Context is King? 〜Verifiability時代とコンテキスト設計 / Beyond "Context is King"
rkaga
6
1k
なあ兄弟、 余白の意味を考えてから UI実装してくれ!
ktcryomm
11
11k
非同期処理の迷宮を抜ける: 初学者がつまづく構造的な原因
pd1xx
1
700
WebRTC、 綺麗に見るか滑らかに見るか
sublimer
1
160
Cap'n Webについて
yusukebe
0
120
AIコーディングエージェント(NotebookLM)
kondai24
0
170
C-Shared Buildで突破するAI Agent バックテストの壁
po3rin
0
380
WebRTC と Rust と8K 60fps
tnoho
2
1.9k
UIデザインに役立つ 2025年の最新CSS / The Latest CSS for UI Design 2025
clockmaker
18
7.2k
令和最新版Android Studioで化石デバイス向けアプリを作る
arkw
0
380
ゲームの物理 剛体編
fadis
0
320
CSC509 Lecture 14
javiergs
PRO
0
220
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
141
7.2k
Being A Developer After 40
akosma
91
590k
Docker and Python
trallard
47
3.7k
Music & Morning Musume
bryan
46
7k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
970
Optimising Largest Contentful Paint
csswizardry
37
3.5k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
54k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
121
20k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Building Flexible Design Systems
yeseniaperezcruz
330
39k
Faster Mobile Websites
deanohume
310
31k
Transcript
Accessing MySQL from PHP Fundamental PHP & Web Development lecturer
: Lucien Lee 李柏緯 Lecture 5
2
flow •Connect MySQL Server •Open database •execute SQL •close database
3
connect server 4 Before we can access data in a
database, we must open a connection to the MySQL server.
5
6 mysql_connect mysql_connect(host,username,password); mysql_connect(localhost,‘root’,‘123456’);
SELECT DB choose the db you would like to query
7
8
9 mysql_select_db $link = mysql_connect(localhost,‘root’,‘123456’); mysql_select_db(‘user’, $link);
query execute SQL query BY PHP 10
11
12 mysql_query $sql = “SELECT * FROM table”; $result =
mysql_query($sql,$link);
PHP 5 and older //before query mysql_query('SET NAMES utf8'); 13
fetch result after query, we only get pointer to resource
14
mysql_fetch_array while($row = mysql_fetch_array($result)){ //do something echo $row[‘fieldName’]; echo $row[0];
} 15
mysql_fetch_array while($row = mysql_fetch_array($result,MYSQL_ASSOC)) { //do something echo $row[‘fieldName’]; //echo
$row[0] is wrong } 16
mysql_fetch_assoc while($row = mysql_fetch_assoc($result)) { //do something echo $row[‘fieldName’]; }
17
mysql_fetch_array while($row = mysql_fetch_array($result, MYSQL_NUM)) { //do something //echo $row[‘fieldName’]
is wrong echo $row[0]; } 18
array type •MYSQL_ASSOC •MYSQL_NUM •MYSQL_BOTH 19
remove your pointer we may directly get a specific record
20
mysql_data_seek mysql_data_seek(data,row_num) $row = mysql_fetch_array($result); mysql_data_seek($result,8) $row = mysql_fetch_array($result); //get
9th record 21
mysql_close close Database connect 22
mysql_close mysql_close(resource); 23
more something else 24
mysql_num_rows 25 KNOW HOw many rows selected
mysql_num_rows mysql_num_rows($result); 26
mysql_affected_rows know how many record affected 27
mysql_affected_rows //after update mysql_affected_rows($link_identifier); 28
mysql_fetch_field get field information 29
mysql_fetch_field mysql_fetch_field(data,offset) $meta= mysql_fetch_field($result,1); echo $meta->name; echo $meta->type; 30
? Use SQL to manipulate record 31
INSERT •Insert a new record • INSERT INTO `tableName` (field1,field2,...)
Values (data1,data2...) 32
UPdate •update an exist record •UPDATE `tableName` SET field =
data, ... WHERE condition 33
DELETE •delete an exist record •DELETE FROM `table` WHERE condition
34
You can use better way 35
mysqli 36 mysql improvement
reference 37 http://www.w3schools.com/php/php_ref_mysqli.asp
practice 38 • Make a message board that users can
leave a message containing name(necessary), message and timestamp. • users can view all message and delete them.