首頁 後端開發 php教程 開始使用PHP MySQL數據庫中的CRUD操作

開始使用PHP MySQL數據庫中的CRUD操作

Mar 01, 2025 am 10:18 AM

>本教程使用PHP和MySQL演示了基本CRUD(創建,讀,更新,刪除)操作。 對於PHP開發人員學習數據庫連接性,這是任何Web應用程序的重要技能。 我們將重點介紹Core mysqli函數以進行簡單。

數據庫連接對於大多數Web應用程序是基礎,因為數據庫存儲了應用程序數據。 本指南假定啟用

擴展名的工作PHP和MySQL安裝。 您可以使用mysqli(查找“ MySQLI”部分)或命令行工具來驗證這一點:phpinfo()>。 如果輸出已啟用,則應列出php -mmysqli>

>讓我們封面:

    建立數據庫連接
  • 選擇數據庫
  • >插入和更新記錄
  • >檢索記錄
  • 刪除記錄

數據庫連接:

>我們將使用程序方法和

函數來清晰。 該功能需要四個參數:mysqli_connect

$connection_obj = mysqli_connect("{MYSQL_HOSTNAME}", "{MYSQL_USERNAME}", "{MYSQL_PASSWORD}", "{MYSQL_DATABASE}");
var_dump($connection_obj);
  • :mySQL Server主機名或IP(例如,{MYSQL_HOSTNAME}localhost)。 127.0.0.1
  • :mysql用戶名(通常{MYSQL_USERNAME})。 root>
  • :mySQL密碼(通常最初是空白的)。 {MYSQL_PASSWORD}>
  • :數據庫名稱。 {MYSQL_DATABASE}
成功的連接返回連接對象。 錯誤處理是必不可少的:

$connection_obj = mysqli_connect("{MYSQL_HOSTNAME}", "{MYSQL_USERNAME}", "{MYSQL_PASSWORD}", "{MYSQL_DATABASE}");
if (!$connection_obj) {
    echo "Error No: " . mysqli_connect_errno();
    echo "Error Description: " . mysqli_connect_error();
    exit;
}

選擇數據庫: >雖然您可以在

>中指定數據庫,但

允許在連接之後切換數據庫:mysqli_connect mysqli_select_db

$connection_obj = mysqli_connect("{MYSQL_HOSTNAME}", "{MYSQL_USERNAME}", "{MYSQL_PASSWORD}");
if (!$connection_obj) { /* error handling as above */ }
mysqli_select_db($connection_obj, "{MYSQL_DATABASE}");
將連接對象和數據庫名稱作為參數。

mysqli_select_db創建和更新記錄:

> 創建一個mySQL表(例如,使用phpmyadmin):>

>插入:

CREATE TABLE `employee` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL,
  `email` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL,
  `phone` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

>至關重要的是,可防止SQL注入漏洞。

更新:
$name = 'John Smith';
$email = 'john.smith@yahoo.com';
$phone = '541-754-1234';

$query = "INSERT INTO employee(`name`,`email`, `phone`)
VALUES ('" . mysqli_real_escape_string($connection_obj, $name) . "','" . mysqli_real_escape_string($connection_obj, $email) . "','" . mysqli_real_escape_string($connection_obj, $phone) . "')";

mysqli_query($connection_obj, $query);

> mysqli_real_escape_string

檢索記錄:

$id = 1;
$phone = '333-555-4444';

$query = "UPDATE employee SET `phone` = '" . mysqli_real_escape_string($connection_obj, $phone) . "' WHERE `id` = '" . (int)$id . "'";
mysqli_query($connection_obj, $query);
檢索行;

>允許按名稱或索引訪問列。 僅提供關聯陣列。

$query = "SELECT * FROM employee";
$result = mysqli_query($connection_obj, $query) or die(mysqli_error($connection_obj));

while ($row = mysqli_fetch_array($result, MYSQLI_BOTH)) {
    echo "ID:" . $row['id'] . "<br>";
    echo "Name:" . $row['name'] . "<br>";
    echo "Phone:" . $row['phone'] . "<br>";
    echo "Email:" . $row['email'] . "<br><br>";
}
刪除記錄:

mysqli_fetch_array 在所有操作之後,請記住使用MYSQLI_BOTH關閉連接。 此示例為PHP中更複雜的數據庫交互提供了基礎。 請記住要始終對用戶輸入進行消毒以防止SQL注入。 mysqli_fetch_assoc>

Get Started With CRUD Operations in PHP MySQL Databases Get Started With CRUD Operations in PHP MySQL Databases Get Started With CRUD Operations in PHP MySQL Databases Get Started With CRUD Operations in PHP MySQL Databases Get Started With CRUD Operations in PHP MySQL Databases Get Started With CRUD Operations in PHP MySQL Databases

>(注意:圖像URL是原始輸入中的佔位符。如果需要,將它們替換為實際的圖像URL。)

以上是開始使用PHP MySQL數據庫中的CRUD操作的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Stock Market GPT

Stock Market GPT

人工智慧支援投資研究,做出更明智的決策

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

如何檢查電子郵件地址在PHP中是否有效? 如何檢查電子郵件地址在PHP中是否有效? Sep 21, 2025 am 04:07 AM

usefilter_var()

如何在PHP中製作對象的深度副本或克隆? 如何在PHP中製作對象的深度副本或克隆? Sep 21, 2025 am 12:30 AM

useunSerialize(serialize($ obj))fordeepcopyingwhenalldataiSerializable;否則,exhiment__clone()tomanallyDuplicateNestedObjectedObjectSandAvoidSharedReference。

如何合併PHP中的兩個陣列? 如何合併PHP中的兩個陣列? Sep 21, 2025 am 12:26 AM

usearray_merge()tocombinearrays,oftritingDupritingDuplicateStringKeySandReIndexingNumericKeys; forsimplerconcatenation,尤其是innphp5.6,usethesplatoperator [... $ array1,... $ array2]。

如何在PHP項目中使用名稱空間? 如何在PHP項目中使用名稱空間? Sep 21, 2025 am 01:28 AM

NamespacesinPHPorganizecodeandpreventnamingconflictsbygroupingclasses,interfaces,functions,andconstantsunderaspecificname.2.Defineanamespaceusingthenamespacekeywordatthetopofafile,followedbythenamespacename,suchasApp\Controllers.3.Usetheusekeywordtoi

MySQL條件聚合:使用CASE語句實現字段的條件求和與計數 MySQL條件聚合:使用CASE語句實現字段的條件求和與計數 Sep 16, 2025 pm 02:39 PM

本文深入探討了在MySQL中如何利用CASE語句進行條件聚合,以實現對特定字段的條件求和及計數。通過一個實際的預訂系統案例,演示瞭如何根據記錄狀態(如“已結束”、“已取消”)動態計算總時長和事件數量,從而克服傳統SUM函數無法滿足複雜條件聚合需求的局限性。教程詳細解析了CASE語句在SUM函數中的應用,並強調了COALESCE在處理LEFT JOIN可能產生的NULL值時的重要性。

PHP中的魔術方法是什麼,並提供了'__call()和`__get()'的示例。 PHP中的魔術方法是什麼,並提供了'__call()和`__get()'的示例。 Sep 20, 2025 am 12:50 AM

__call()methodistred prightedwhenaninAccessibleOrundEfinedMethodiscalledonAnaBject,允許customhandlingByAcceptingTheMethodNameAndarguments,AsshoheNpallingNengallingUndEfineDmethodSlikesayHello()

如何使用PHP更新數據庫中的記錄? 如何使用PHP更新數據庫中的記錄? Sep 21, 2025 am 04:47 AM

toupdateadatabaseRecordInphp,firstConnectusingpDoormySqli,thenusepreparedStatementStoExecuteAsecuteAsecuresqurupDatequery.example.example:$ pdo = newpdo(“ mySql:mysql:host = localHost; localhost; localhost; dbname; dbname = your_database = your_database',yous_database',$ username,$ username,$ squeaste;

如何在PHP中獲取文件擴展名? 如何在PHP中獲取文件擴展名? Sep 20, 2025 am 05:11 AM

usepathinfo($ fileName,pathinfo_extension)togetThefileextension; itreliablyhandlesmandlesmultipledotsAndEdgecases,返回theextension(例如,“ pdf”)oranemptystringifnoneexists。

See all articles