PHP中的insert是指向數據庫中添加新的記錄。這個過程中使用的函數是mysqli_query()。通過在代碼中調用mysqli_query()函數,我們可以向數據庫中添加新的記錄。下面我們詳細了解下如何使用mysqli_query()這個函數。
$servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDB"; // 創建連接 $conn = new mysqli($servername, $username, $password, $dbname); // 檢測連接 if ($conn->connect_error) { die("連接失敗: " . $conn->connect_error); } $sql = "INSERT INTO MyGuests (firstname, lastname, email) VALUES ('John', 'Doe', 'john@example.com')"; if ($conn->query($sql) === TRUE) { echo "新記錄插入成功"; } else { echo "Error: " . $sql . "
" . $conn->error; } $conn->close();
在這段代碼中,我們在MyGuests表中插入了一條記錄。MyGuests表包含3列,分別是firstname、lastname和email,這三個字段的值分別為John、Doe和john@example.com。
在使用mysqli_query()函數時,需要注意以下幾點:
1. 在將查詢語句傳遞給mysqli_query()函數時,確保查詢語句沒有任何語法錯誤。如果查詢語句包含語法錯誤,函數會返回一個錯誤。
2. 在向數據庫中插入新的記錄時,需要確保每個字段的值都是有效的,否則插入會失敗。
3. 在插入記錄之前,需要首先創建一個與數據庫的鏈接。這個過程可以使用mysqli_connect()函數完成。
下面是一個帶有變量的插入實例:
$servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDB"; // 創建連接 $conn = new mysqli($servername, $username, $password, $dbname); // 檢測連接 if ($conn->connect_error) { die("連接失敗: " . $conn->connect_error); } // 預處理及綁定 $stmt = $conn->prepare("INSERT INTO MyGuests (firstname, lastname, email) VALUES (?, ?, ?)"); $stmt->bind_param("sss", $firstname, $lastname, $email); // 設置參數并執行 $firstname = "John"; $lastname = "Doe"; $email = "john@example.com"; $stmt->execute(); $firstname = "Mary"; $lastname = "Moe"; $email = "mary@example.com"; $stmt->execute(); $firstname = "Julie"; $lastname = "Dooley"; $email = "julie@example.com"; $stmt->execute(); echo "新記錄插入成功"; $stmt->close(); $conn->close();
在上面的代碼中,我們使用prepare語句和bind_param()函數為每個參數分配一個變量。然后我們設置每個變量的值,并使用execute()函數將記錄插入到數據庫中。這樣做的好處是可以有效地防止SQL注入攻擊。
在使用PHP的insert功能時,需要注意安全問題。在向數據庫中插入數據之前,需要進行一定的安全措施,以避免SQL注入等攻擊。我們可以使用預備語句和綁定參數的方式來保護自己的程序。同時,在開發階段,使用數據庫盡量開啟其調試模式,以方便發現與處理錯誤。
上一篇from 表單 php
下一篇from 單選 php