---
# System prepended metadata

title: PHP與MySQL的連結
tags: [PHP, ' SQL']

---

---
tags: PHP, SQL
---
# PHP與MySQL的連結
## 物件導向
* "->"：存取物件其所屬類別的屬性或方法
> 宣告一個物件→實體化物件→執行物件功能

範例：
class demo{
&nbsp;&nbsp;&nbsp;&nbsp;function foo(&nbsp;) {
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return "Hello World!";
&nbsp;&nbsp;&nbsp;&nbsp;}
}

$demo = new demo( );
echo $demo->foo( );

結果：印出 Hello World!

> 參考資料
> * [[PHP] PHP中常用的特殊符號的意義](https://charleslin74.pixnet.net/blog/post/436296844-%5Bphp%5D-php%E4%B8%AD%E5%B8%B8%E7%94%A8%E7%9A%84%E7%89%B9%E6%AE%8A%E7%AC%A6%E8%99%9F%E7%9A%84%E6%84%8F%E7%BE%A9)
> * [PHP中的符號 ->、=> 和 :: 分別表示什麼意思?](http://icodding.blogspot.com/2015/07/php.html)
> * [PHP物件導向的第一課：class](https://ithelp.ithome.com.tw/articles/10114633)
> * [PHP物件導向的第二課：重談「方法」，物件「屬性」及「成員」](https://ithelp.ithome.com.tw/articles/10114707)
## 連結資料庫
* 把資料庫連結語法寫成獨立檔案後(如sqlConn.php)，之後在每個需要資料庫連結的php檔中用include_once(“sqlConn.php”);方式引用
>> 容易維護：避免資料庫連結方式改變後，需進行大量檔案內容的修改

![](https://i.imgur.com/InyPTVQ.png)

連線失敗：
![](https://i.imgur.com/MX5L47Q.png)

* 可以到phpMyAdmin 新增使用者帳號

![](https://i.imgur.com/X36bM2n.png)

![](https://i.imgur.com/zhliOaR.png)

![](https://i.imgur.com/JQOHsHz.png)


## 建立資料庫與資料表
![](https://i.imgur.com/IhaOidY.png)

![](https://i.imgur.com/gTfHnt4.png)

![](https://i.imgur.com/sS3uRbt.png)


## 新增資料

![](https://i.imgur.com/JxvUpTG.png)

![](https://i.imgur.com/fJa0prA.png)

## 顯示資料
![](https://i.imgur.com/9WeZ1hy.png)

![](https://i.imgur.com/PsV9APj.png)

> 補充資料：
> * [[PHP][MySQL] fetch_array與fetch_assoc與fetch_row的比較](https://richarlin.tw/blog/php-mysql-fetch/)

## 結合HTML表單

### 解決中文亂碼問題
1. 檢查網頁是否為utf8編碼
2. 檢查資料表欄位是否為utf8編碼 (utf8-unicode-ci)
3. 在sqlConn.php中加入 $con -> query("SET NAMES utf8");

### 連結資料庫 sqlConn.php

![](https://i.imgur.com/V0Ko5Hg.png)

### 首頁 index.php
![](https://i.imgur.com/fmmz9jR.png)


### 新增資料 add.php
* 使用isset( )判斷$_POST('button')是否存在

*index.php*
![](https://i.imgur.com/toboH3z.png)

![](https://i.imgur.com/dLz2KpV.png)

![](https://i.imgur.com/wNyKNA8.png)

![](https://i.imgur.com/r5jc93m.png)

### 更新資料 update.php
*index.php*
![](https://i.imgur.com/zC6XKyR.png)

*update.php*
![](https://i.imgur.com/Y2eaE3k.png)

### 刪除資料 del.php
*index.php*
![](https://i.imgur.com/5ZUFcx6.png)

* **onclick= return confirm("")**：[JS] onClick 的屬性，所指定的字串格式是「return(程式碼)」，其中「程式碼」是一段 JavaScript 的程式碼，只有當此程式碼回傳的值是 true 時，對此連結的點選才會連到指定的網址，否則就完全沒有作用
>參考資料
>* [[JS]事件驅動](http://mirlab.org/jang/books/javascript/basic2.asp?title=1-3%20%B0%F5%A6%E6%A4%E8%A6%A1%A4G%A1G%A8%C6%A5%F3%C5X%B0%CA)

*del.php*
![](https://i.imgur.com/YFVbR1T.png)
