# PHP link MySQL to insert

首先我用form表單為例，然後填寫完資料以後按送出，會觸發一些api做事情，html的code這邊就不貼了，直接進入主題

## 連接MySQL

以下是你要連的資料庫的一些基本的設定，按照修改一下就可以了

```php
$dbhost = "IP位址";
$dbuser = "帳號";
$dbpass = "密碼";
$dbname = "資料庫";
$bdtable = "資料庫底下的某個table";
$mysqli = new mysqli($dbhost,$dbuser,$dbpass,$bdname);
// 連接有問題底下這是用來除錯的
if ($mysqli->connect_error) {
  die("Connection failed: " . $mysqli->connect_error);
}
// 以防亂碼
$mysqli->query("SET NAMES utf8");
```

## 抓取form表單的資料

這邊就簡單帶過，該如何抓取form表單裡面各個欄位的值，並且設定成變數，方便接下來要存入資料庫用

```php
$contact_person = $_POST['contact_person'];
$email = $_POST['email'];
$contact_phone = $_POST['contact_phone'];
$companyname = $_POST['companyname'];
$company_address = $_POST['company_address'];
$pc_volume = $_POST['pc_volume'];
$apply_for = $_POST['apply_for'];
$description = $_POST['description'];
```

所用的方式跟你的form是用什麼方式傳出值有關，我這邊用的是post的方式，所以用$\_POST\[" "]接值

## 新增到資料庫

如果上面連接資料庫跟抓取值都沒問題的話，這邊新增資料就真的輕鬆寫意拉

```php
$stmt = "INSERT INTO $dbname.$bdtable ( uniq_id, contact_person, email, contact_phone, companyname, company_address, pc_volume, apply_for, description) VALUES('456','$contact_person','$email','$contact_phone','$companyname','$company_address','$pc_volume','$apply_for','$description')";

// 溫馨提醒
if ($mysqli->query($stmt) === TRUE) {
  $_SESSION['success'] = "親愛的用戶您好，已收到您的申請表單，我們會馬上安排人員與您聯繫，請耐心等候，謝謝";
} else {
  echo "Error: " . $stmt . "<br>" . $mysqli->error;
}
$mysqli->close();
```

當然為了方便除錯，這邊我會設定這個溫馨提醒，如果沒有新增成功會跳錯誤，最後還要記得順便把資料庫關閉，避免不必要的錯誤
