第12天 PHP操作MySQL(一)

學習目標

PHP操作MySQL的步驟
PHP連接MySQL服務器
選擇當前數據庫
執(zhí)行各種SQL語句
從結果集獲取一行數據
綜合案例:學生信息管理

phpMyAdmin****的使用方法

 1)導入墙基、導出數據庫文件
2)創(chuàng)建和操作數據庫

Navicat的使用方法

 1)導入、導出數據庫文件
2)創(chuàng)建和操作數據庫

需求: 統(tǒng)計學生信息
思路:創(chuàng)建表單,輸入學生信息狞悲,保存起來焰檩,并顯示
前提:PHP必須開啟操作mysql的擴展 php_mysqli.dll的擴展
說明:低版本的PHP操作mysql的擴展是php_mysql.dll,高版本的PHP回右,已經開始廢棄php_mysql.dll,高版本的使用php_mysqli.dll和php_pdo.dll.
如何查看PHP有沒有開啟此擴展专控?
現在php.ini中開啟擴展


image.png

去掉前面的 分號(;)


image.png

重啟apache,然后在PHP腳本中使用phpinfo()進行查看沾歪,
或者使用php -m查看
phpinfo();
image.png

image.png

PHP操作MySQL的步驟:
1中捆、PHP連接數據庫

2鸯匹、選擇數據庫
3、設置字符集
4泄伪、發(fā)送SQL語句
5殴蓬、執(zhí)行SQL語句
6、返回結果
7蟋滴、釋放資源

PHP連接MySQL服務器

1染厅、mysqli_connect()

描述:連接到 MySQL服務器
語法:mysqli mysqli_connect([host][,username][,password][,dbname][,port])
參數:
host:MySQL服務器〗蚝可以包含端口號肖粮,默認值為“l(fā)ocalhost:3306”
username:用戶名。默認值是服務器進程所有者的用戶名尔苦;
password:密碼涩馆。
dbname:數據庫名稱。
port:MySQL服務器的端口號蕉堰,默認為3306凌净。
返回值:如果連接成功,則返回MySQLi連接對象屋讶。如果失敗冰寻,則返回FALSE。


image.png

2皿渗、****mysqli_connect_error()

描述:返回上一個 MySQL 連接產生的文本錯誤信息
語法:string mysqli_connect_error ( void)
參數:沒有參數斩芭。


image.png

3****轻腺、mysqli_close()

描述:關閉先前打開的數據庫連接
語法:bool mysqli_close ( mysqli $link )

image.png

函數:

mysqli_error(連接資源) 錯誤信息
mysqli_errno(連接資源) 錯誤編號

選擇當前數據庫

描述:一個數據庫服務器可能包含很多的數據庫,通常需要針對某個具體的數據庫進行編程
語法:bool mysqli_select_db(mysqli $link, string $database)
返回值:如果成功返回TRUE划乖,失敗則返回FALSE贬养。

image.png

設置客戶端字符集

描述:設置默認字符編碼
語法:bool mysqli_set_charset ( mysqli link , stringcharset )
返回:成功時返回 TRUE, 或者在失敗時返回 FALSE琴庵。

image.png

執(zhí)行各種SQL語句

mysqli_query()

描述:發(fā)送一條 MySQL 查詢误算;
語法:resource mysqli_query(mysqli $link , string $query )
參數:
$query是查詢字符串;
$link是創(chuàng)建的活動的數據庫連接迷殿;
說明:mysqli_query() 僅對 SELECT儿礼,SHOW 或 DESCRIBE 語句返回一個mysqli_result結果集對象,如果查詢執(zhí)行不正確則返回 FALSE庆寺。對于其它類型的 SQL 語句蚊夫,mysqli_query()在執(zhí)行成功時返回 TRUE,出錯時返回 FALSE懦尝。非 FALSE 的返回值意味著查詢是合法的并能夠被服務器執(zhí)行知纷。
注意:查詢字符串不應以分號結束,和命令行模式下有區(qū)別陵霉。

image.png

從結果集獲取一行數據

1琅轧、mysqli_fetch_row()

? 描述:從結果集中取得一行作為索引數組;
? 格式:array mysqli_fetch_row ( mysqli_result $result )
? 返回:返回根據所取得的行生成的數組撩匕,如果沒有更多行則返回 FALSE鹰晨。
? 說明:mysqli_fetch_row() 從指定的結果標識關聯的結果集中取得一行數據并作為數組返回。每個結果的列儲存在一個數組的單元中止毕,偏移量從 0 開始模蜡。
? 提示:依次調用mysqli_fetch_row()將返回結果集中的下一行,如果沒有更多行則返回FALSE扁凛。

2忍疾、mysqli_fetch_assoc()

ü 描述:從結果集中取得一行作為關聯數組
ü 語法:array mysqli_fetch_assoc ( mysqli_result $result )
ü 返回值:從結果集取得的行生成的關聯數組,如果沒有更多行則返回 FALSE谨朝;
ü 注意:此函數返回的字段名大小寫敏感卤妒。

3、mysqli_fetch_array()

ü 描述:從結果集中取得一行作為關聯數組字币,或數字數組则披,或二者兼有
ü 語法:array mysqli_fetch_array ( mysqli_result result [, intresult_type = MYSQLI_BOTH ] )
ü 參數:$result_type是一個常量洗出,取值:MYSQLI_BOTH(兩者兼有士复,默認)、MYSQLI_ASSOC(關聯索引)、MYSQLI_NUM(數字索引)
ü 返回:返回根據從結果集取得的行生成的數組阱洪,如果沒有更多行則返回 FALSE便贵。
ü 注意:本函數返回的字段名區(qū)分大小寫。

4冗荸、mysqli_fetch_all()

ü 描述:從結果集中取得所有行作為關聯數組承璃、枚舉數組、或二者兼有
ü 語法:mixed mysqli_fetch_all ( mysqli_result result [, intresulttype = MYSQLI_NUM ] )

image.png

獲取記錄數

1蚌本、mysqli_num_rows()

ü 描述:取得結果集中行的數目
ü 語法:int mysqli_num_rows ( mysqli_result $result )
ü 說明:mysqli_num_rows()返回結果集中行的數目盔粹。
ü 注意:此命令僅對 SELECT 語句有效

image.png

2魂毁、mysqli_affected_rows()

ü 描述:取得前一次 MySQL 操作所影響的記錄行數玻佩;
ü 語法:int mysqli_affected_rows ( mysqli $link )
ü 說明:取得最近一次與 $link 關聯的 INSERT、UPDATE 或 DELETE 查詢所影響的記錄行數席楚。

image.png

特殊情況:
image.png

3、mysqli_insert_id()

ü 描述:取得上一次插入操作的主鍵ID税稼;
ü 語法:int mysqli_affected_rows ( mysqli $link )
ü 說明:主要針對insert操作

image.png

綜合案例:學生信息管理

image.png

1烦秩、創(chuàng)建數據庫和表


image.png

2、制作表單 add.html


image.png

image.png

3郎仆、添加入庫 add.php
image.png

4只祠、展示數據 index.php


image.png

5、刪除 del.php
index.php
image.png

del.php
image.png

6扰肌、修改
index.php

image.png

update.php
image.png

update.html
image.png

image.png

edit.php
image.png

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末抛寝,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子曙旭,更是在濱河造成了極大的恐慌盗舰,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,000評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件桂躏,死亡現場離奇詭異钻趋,居然都是意外死亡,警方通過查閱死者的電腦和手機剂习,發(fā)現死者居然都...
    沈念sama閱讀 94,745評論 3 399
  • 文/潘曉璐 我一進店門蛮位,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人鳞绕,你說我怎么就攤上這事失仁。” “怎么了们何?”我有些...
    開封第一講書人閱讀 168,561評論 0 360
  • 文/不壞的土叔 我叫張陵萄焦,是天一觀的道長。 經常有香客問我垂蜗,道長楷扬,這世上最難降的妖魔是什么解幽? 我笑而不...
    開封第一講書人閱讀 59,782評論 1 298
  • 正文 為了忘掉前任,我火速辦了婚禮烘苹,結果婚禮上躲株,老公的妹妹穿的比我還像新娘。我一直安慰自己镣衡,他們只是感情好霜定,可當我...
    茶點故事閱讀 68,798評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著廊鸥,像睡著了一般望浩。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上惰说,一...
    開封第一講書人閱讀 52,394評論 1 310
  • 那天磨德,我揣著相機與錄音,去河邊找鬼吆视。 笑死典挑,一個胖子當著我的面吹牛,可吹牛的內容都是我干的啦吧。 我是一名探鬼主播您觉,決...
    沈念sama閱讀 40,952評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼授滓!你這毒婦竟也來了琳水?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 39,852評論 0 276
  • 序言:老撾萬榮一對情侶失蹤般堆,失蹤者是張志新(化名)和其女友劉穎在孝,沒想到半個月后,有當地人在樹林里發(fā)現了一具尸體郁妈,經...
    沈念sama閱讀 46,409評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡浑玛,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 38,483評論 3 341
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現自己被綠了噩咪。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片顾彰。...
    茶點故事閱讀 40,615評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖胃碾,靈堂內的尸體忽然破棺而出涨享,到底是詐尸還是另有隱情,我是刑警寧澤仆百,帶...
    沈念sama閱讀 36,303評論 5 350
  • 正文 年R本政府宣布厕隧,位于F島的核電站,受9級特大地震影響,放射性物質發(fā)生泄漏吁讨。R本人自食惡果不足惜髓迎,卻給世界環(huán)境...
    茶點故事閱讀 41,979評論 3 334
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望建丧。 院中可真熱鬧排龄,春花似錦、人聲如沸翎朱。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,470評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽拴曲。三九已至争舞,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間澈灼,已是汗流浹背竞川。 一陣腳步聲響...
    開封第一講書人閱讀 33,571評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留叁熔,地道東北人流译。 一個月前我還...
    沈念sama閱讀 49,041評論 3 377
  • 正文 我出身青樓,卻偏偏與公主長得像者疤,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子叠赦,可洞房花燭夜當晚...
    茶點故事閱讀 45,630評論 2 359