PHP連線和使用mysql

2021-08-29 08:47:37 字數 2891 閱讀 7648

設定

繼續後面的內容之前,需要對mysql做一點準備工作。需要建立資料庫、新增表和建立訪問它的新使用者。

在 mysql 控制台中輸入以下內容:

create database workflow;

use workflow;

create table users (id int auto_increment primary key, username

varchar(50), email varchar(255), password varchar(50));

show tables;

最後的結果看起來類似於:

+--------------------+

| tables_in_workflow |

+--------------------+

| users |

+--------------------+

1 row in set (0.00 sec)

最後新增新使用者wfuser,口令為wfpass

grant all privileges on *.* to 'wfuser'@'localhost'

identified by 'wfpass' with grant option;

然後我們來使用這個資料庫。

連線 mysql

如果不與某種形式的資料庫互動,那麼建立任何較大的 web 應用程式基本上是不可能的。在這個示例應用程式中,我們將使用 mysql 資料庫儲存使用者名稱和口令資訊。這一節將在註冊頁面中新增必要的功能,以檢查提交的使用者名稱是否惟一,如果是惟一的,則將其新增到表中。還可以檢視已經顯示在資料庫中的資訊。最終我們將建立應用程式登入頁面。

首先要連線到資料庫。php有一些函式完全是用於處理 mysql 資料庫的,這一節中將用到它們。

第一步是建立乙個函式,以連線到 設定 一節中建立的工作流資料庫:

...

return $message;

}function db_connect($user='wfuser',

$password='wfpass', $db='workflow')

foreach ($_post as $key=>$value)

... if (validate($_post) == "ok") else

...

現在,這個函式可以用於連線本地伺服器上的任何 mysql 資料庫。實際上,該函式的一大優點就是這一點,從某種意義上說,這個優點是與資料庫無關的。您不僅可以改變資料庫的名稱,還可以更改將要訪問的資料庫型別,而且所有修改都在這個函式中完成。

現在可以準備插入使用者資料了。

插入記錄

現在可以向前面建立的使用者表中新增資料了。為此需要建立乙個向該錶插入資料的 sql 語句,然後執行該語句。

該語句的形式如下:

insert into users (username, email, password) values 

('roadnick', '[email protected]', 'supersecretpassword')

如果在建立表時特別注意,您可能會奇怪id列是幹什麼的。可以指定第一列為auto_increment
...

if (validate($_post) == "ok") else } else else} else} else else

...

檢索資料的第一步是從$resultsall中取出一行,它實際上是表示整個資料集的資源。mysql_fetch_array()函式正如其名稱所指示的那樣,返回包含某一行中資料的關聯陣列。鍵和列名相同,因此,通過從$row陣列中請求適當的值,很容易輸出這一行中的資料。

不過該例中只有一行,如何訪問所有資料呢?

檢視所有的結果:while迴圈

如果在第一次檢索中,至少有一行可供檢索,那麼在 if-then 語句(或者後面使用的 while 語句)中,$row將顯示為 true。當 php 遇到while($row) 語句時,它會說,「哦,該表示式的值是 true,那麼執行這一段**吧。」於是輸出這一行資料,然後再提取另一行,又回到迴圈的頂端。

...

} else

}...

如果檢索另一行成功,那麼$row將再次為 true,迴圈再次執行。如此反覆,直到沒有剩餘的行為止,mysql_fetch_array()返回 false。現在,php 知道要跳出迴圈執行指令碼中剩下的語句。

順便說一下:如果忘掉最後一步,即檢索另一行,那麼$row將一直為 true,伺服器不停地執行該迴圈,直到記憶體溢位或者超時為止。因此,建立這類迴圈時,首先應該新增的語句就是遞增要遍歷的物件

關閉資料庫連線

...

if (validate($_post) == "ok")mysql_close();} else {

...

現在就等著整理了……

PHP使用mysqli連線MySQL資料庫

1.建立連線 function mysqli connect host user password database port socket 說明 host 可選,對應的主機ip位址 user 可選,mysql使用者名稱 password 可選,密碼 database 可選,資料庫名稱 port 可...

PHP使用mysqli連線MySQL資料庫

使用mysqli函式庫連線mysql,支援物件導向和面向過程兩種方式 1.物件導向的使用方式 建立乙個連線 db new mysqli localhost root 123456 dbname 假設建立連線時未指定資料庫則選擇使用的資料庫。切換使用的資料庫 db select db dbname 查...

php連線mysql測試和配置

php連線mysql測試 link mysql connect localhost root 123456 if link echo 失敗 else echo 成功 mysql close 執行 出現 call to undefined function mysql connect 失敗 將php ...