日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

二、PHP基础——连接msql数据库进行增删改查操作 实战:新闻管理项目

發布時間:2024/7/5 php 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 二、PHP基础——连接msql数据库进行增删改查操作 实战:新闻管理项目 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Mysql擴展
PHP針對MySQL數據庫操作提供的擴展:允許PHP當做MySQL的一個客戶端連接服務器進行操作。
連庫基本操作
連接數據庫服務器
1)資源 mysql_connect(服務器地址,用戶名,密碼)


連接資源默認也是超全局的,任何地方都可以使用該資源進行數據庫的其他操作

補充:mysql_connect默認是對一個服務器只連接一次(如果再次運行,返回的是同一個資源),但是如果有需要連接同一個資源兩次,那么可以使用第四個參數:TRUE

設置連接編碼
保持客戶端與服務器之間的溝通順暢:同一“語言”(字符集)
1)形式1:mysql_query(“set names XXX”)

2)形式2:mysql_set_charset(“XXX”)

3)怎么確定要使用何種編碼
客戶端當前執行腳本的界面是什么字符集,就設定成什么字符集
選定要使用的數據庫
1)形式1:mysql_query(“use XXX”)
2)形式2:mysql_select_db(“XXX”)

關閉連接
主動釋放連接:MySQL服務器的連接資源是有限的,不用了需要釋放(腳本執行結束系統也會自動釋放)
1)mysql_close()

執行增刪改操作
Mysql_query函數執行結果返回的是true或者false,true代表執行成功,false代表執行失敗:失敗原因分兩種:一種是SQL指令本身語法錯誤;第二種是執行失敗;

做個專門負責數據庫初始化的腳本:之后要操作數據庫包含該腳本即可

1)mysql_query(“insert …”):通過insert指令向指定表插入對應的數據

2)mysql_query(“delete …”):根據刪除指令操作數據庫(表)

3)mysql_query(“update …”):根據更新指令操作數據庫

判斷執行結果
1)執行成功,結果為true,只代表SQL指令執行成功
2)執行失敗,結果為false,代表SQL指令錯誤或者操作對象不存在

執行查詢操作
執行查詢語句
1)mysql_query(“select …”)
2)其他類似查詢語句,比如:show語句,desc語句
以上兩種情況的總結:凡是執行操作希望拿到數據庫返回的數據進行展示的(結果返回:數據結果)
3)執行結果的處理:成功為結果集,失敗為false
成功返回結果:SQL指令沒有錯誤,但是如果查詢結果本身為空返回也是true(結果集是一種資源:轉換成bool永遠為TRUE)

失敗為false:SQL指令有錯誤

獲取結果集行數
1)mysql_num_rows():獲取結果集中到底有多少行記錄

解析結果集
將一種結果集資源(PHP不能直接使用),轉換成一種PHP能夠解析的數據格式:通過從結果集中(結果集指針:類似數組指針),按照結果集指針所在位置取出對應的一條記錄(一行),返回一個數組,同時指針下移…直到指針移出結果集。
1)mysql_fetch_assoc():獲取關聯數組,表的表單名字作為數組下標,元素值作為數組元素值

2)mysql_fetch_row():獲取索引數組,只獲取數據的值,然后數組的下標從0開始自動索引

3)mysql_fetch_array():獲取關聯或者索引數組,但是默認是同時存在:一個記錄取兩次,形成一組是關聯數組,一組是索引數組;但是可以通過第二個參數來決定獲取的方式:MYSQL_ASSOC只獲取關聯數組;MYSQL_NUM只獲取索引數組;MYSQL_BOTH獲取全部兩種。

通常結果集的操作:一般是獲取里面的所有(全部記錄)

其他相關函數
有關字段信息
1)mysql_num_fields():獲取一個指定結果集中所有的字段數

2)mysql_field_name():獲取一個指定結果集中指定位置字段的名字

有關出錯信息
1)mysql_error():獲取出錯對應的提示信息
2)mysql_errno():獲取出錯對應的錯誤提示代號

錯誤的判斷:基于Mysql_query這個函數執行的結果:結果返回false就代表執行錯誤。

其他函數
1)mysql_insert_id():獲取上次插入操作所產生的自增長ID,如果沒有自增長ID返回0

Mysql擴展應用案例
添加新聞表單

1) 用戶獲取到一個可以添加新聞表單的HTML文件

修改表單項:method提交對象

2) 用戶提交數據到后臺指定的PHP腳本(POST)

3) 后臺腳本處理數據,插入到數據庫:處理指PHP在拿到數據放入數據庫之前要做很多驗證工作保證數據是有效的。
3.1 接收數據

3,2 數據驗證:合法性驗證。標題不能為空,內容不能為空

3.3 提示用戶,同時讓用戶重新再來(回到新增表單頁面)

3.4 數據入庫

4) 提示用戶操作結果,并跳轉到列表頁(跳轉到詳情頁)

Mysql擴展應用案例
顯示新聞列表

將數據庫中所有的新聞信息獲取出來,然后討要HTML提供的顯示模板把數據全部按照指定的位置和格式輸出顯示。

1、 從數據庫獲取所有的新聞數據:PHP腳本

從結果集中取出所有的記錄:一次取一條,一條一個數組;然后將所有的記錄放到一個數組中:形成一個典型的二維數組


2、 有一個已經做好的HTML模板能夠顯示數據:前端

3、 PHP想辦法將數據在HTML中顯示(二者結合):PHP包含HTML

注意細節:
1、 數據的顯示要通過循環遍歷輸出:需要明確PHP是如何保存數據
2、 數據的格式需要按照需求來顯示:列表、時間、是否置頂
Mysql擴展應用案例
刪除新聞

刪除新聞就是通過用戶選中某一個新聞點擊刪除實現從數據庫剔除。

1、 讓用戶看到所有的新聞:已經完成(新聞顯示列表:news.phpnews.html)
2、 給用戶提供一個對應的點擊按鈕:已經存在
3、 實現點擊針對指定的新聞

4、 有一個專門的PHP腳本負責響應用戶的點擊:點哪條刪哪條
4.1 接收要刪除的新聞ID

4.2 調用數據庫操作刪除數據

4.3 提示刪除成功,并且刷新當前界面

Mysql擴展應用案例
修改新聞

修改新聞指用戶通過某個取到看到想修改的新聞,然后點擊之后能夠修改對應的新聞信息,最后點擊保存實現修改更新到數據庫。

1、 需要看到想編輯新聞:已經完成:新聞列表news.phpnews.html
2、 可以點擊實現查看:列表頁中為每個新聞增加點擊鏈接

3、 需要一個PHP腳本能夠處理這件事
3.1 創建PHP文件,同時接受要編輯的ID

3.2 通過ID獲取對應的新聞信息

4、 需要一個HTML模板來展示當前要編輯的數據:PHP包含HTML
4.1 包含模板HTML

4.2 在模板表單中顯示對應的數據

5、 需要修改前端提供的更新表單:表單提交對象(不限)
5.1 需要修改表單提交對象

5.2 更新操作,是后臺根據表單提交的數據來選擇某個新聞進行更新:表單中必須包含一個唯一能確定記錄的新聞:ID,而ID不需要給用戶看,需要增加隱藏表單

6、 需要一個PHP腳本能夠接受修改后的數據并保存到數據庫
6.1 增加更新數據的PHP腳本

6.2 接收用戶提交的數據,同時進行數據驗證:標題和內容均不能為空

6.3 組織SQL更新到數據庫

6.4 提示結果

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的二、PHP基础——连接msql数据库进行增删改查操作 实战:新闻管理项目的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。