merry lonely christmas PHP 如何向 MySQL 發送數據
你應該對HTML 表單比較了解了,下面的一段程式碼是一個很簡單的HTML 表單: print ("") ; echo $row[0], " ", $row[1], "";
姓:
名:
當你輸入資料,並按下「接著是這個PHP 腳本來處理收到的數據,以下是submitform.php3 的程式碼:
my_connect (local, name, localwords, passwordnect (localword);
mysql_select_db (dbname);
mysql_query ("INSERT INTO tablename (first_name, last_name)
VALUES ('$first_name', '$last_name'); );
print (" ");
print ($last_name);
print ("");
print (" 填寫登錄機碼");
在程式碼的第三行中的"username" 和"password" 分別代表你登陸MySQL 資料庫的帳號和密碼。在第五行中的 "dbname" 表示 MySQL 資料庫的名稱。在第十三行的 "tablename" 是資料庫中的一個資料表的名稱。
當你按下 submit 之後,可以看到你輸入的名字被顯示在一個新的頁面中。再看一看瀏覽器的URL 欄,它的內容應該是像這樣的:
… /submitform.php3?first_name=Fred&last_name=Flintstone
因為我們用到的是表單GET 方法,因此數據是通過URL 來傳送到submitform.php3 的。顯然, GET 方法是有限制的,當要傳遞的內容很多時,就不能用 GET 了,只能用 POST 方法。但不管用什麼方法,當資料傳送完成後, PHP 自動的為每個表單中的欄位建立一個和他們的名字(表單的 name 屬性)相同的變數。
PHP 變數都已用一個美元符號開頭的,這樣,在 submitform.php3 腳本處理的過程中,就會有 $first_name 和 $last_name 這兩個變數了,變數的內容就是你輸入的內容。
我們來檢查一下你輸入的名字是否真的被輸入到資料庫中了。啟動MySQL, 在mysql> 提示下輸入:
mysql> select * from tablename;
你應該可以得到一個表,內容就是你剛才輸入的了:
+------- -----+------------+
| first_name | last_name |
+------------+------ ------+
| 柳| 如風
+------------+------------+
1 rows in set (0.00 sec)
我們再來分析一下submitform.php3 是如何運作的:
腳本的開始兩行是:
myhost_connect (localname, name) ;
這兩個函數呼叫用來開啟MySQL 資料庫,具體的參數的意義剛才已經說過了。
下面的一行是執行一個SQL 語句:
mysql_query ("INSERT INTO tablename (first_name, last_name)
VALUES ('$first_name', '$ mysql_query 函數就是用來對選取的資料庫執行一個SQL 查詢。你可以在 mysql_query 函數中執行任何的 SQL 語句。被執行的 SQL 語句必須當作一個字串用雙引號括起來,在其中的變數要用單引號括起來。
有一個要注意的事情: MySQL 的語句要用一個分號 (;) 結束,一行 PHP 程式碼同樣也是這樣,但是在 PHP 腳本中的 MySQL 語句是不能有分號的。也就是說,當你在mysql> 的提示下輸入MySQL 指令,你應該要加上分號:
INSERT INTO tablename (first_name, last_name)
VALUES ('$first_name', '$last_name') ;
但是如果這個指令出現在PHP 腳本中,就要去掉那個分號了。之所以這樣做,是因為有的語句,如 SELECT 和 INSERT ,有沒有分號都可以工作。但還有一些語句,如 UPDATE ,加上分號就不行了。為了避免麻煩,記住這條規則就好了。
PHP 如何從MySQL 中提取資料
現在我們建立另一個HTML 表單來執行這個任務:
請輸入您的查詢內容:
姓:
in
🎜> 同樣,還要有一個php 腳本來處理這個表單,我們再建立一個searchform.php3 檔案:
mysql_select_db (dbname);
if ($first_name == "")
{$first_name = '%'====} >{$last_name = '%';}
$result = mysql_query ("SELECT * FROM tablename
WHERE first_name LIKE '$first_name%' if ($row = mysql_fetch_array($result)) {
do {
print $row["first_name"]
print (" "); last_name"];
print ("");
} while($row = mysql_fetch_array($result));
} else {print " 對不起,在我們的資料庫中沒有找到我們的資料庫中,沒有再找到符合的紀錄。 ";}
?>
當你在表單中輸入了要檢索的內容,再按下SUBMIT 按鈕後,就會進入一個新的按鈕後,就會進入一個新的按鈕後,就會進入一個新的按鈕後,就會進入一個新的按鈕頁面,其中列出了所有匹配的搜尋結果。資料庫和資料表,這些是每個資料庫應用程式所必需的。 if ($last_name == "")
{$last_name = '%';}
這幾行用來檢查表單的各欄位是否為空白。的語法多源自於C 語言,這兒等號的用法也同C 一樣:一個等號是賦值號,兩個等號才代表邏輯等於。執行的語句是放在「 { 」和「 } 」中的,並且其中的每一語句後面都要加上分號表示語句結束。後來,就該知道這兩行的意思了:如果「 FIRST_NAME 」欄位為空,那麼將列出所有的FIRST_NAME 。
WHERE first_name LIKE '$first_name%'
AND last_name LIKE '$last_name%'"
");
這一行完成了大部分搜尋的工作。當 mysql_query 函數完成一個查詢後,它會傳回一個整數標誌。
查詢從所有的記錄中選出那些first_name 欄位和$first_name 變數相同,並且last_name 欄位和$last_name 變數值也相同的記錄,放到暫存的記錄集中,並用傳回的整數作為這個記錄集的標誌。
if ($row = mysql_fetch_array($result)) {
do {
print $row["first_name"];
print (" "); print ("");
} while($row = mysql_fetch_array($result));
} else {print " 對不起,在我們的資料庫中,沒有找到符合的紀錄。 mysql_fetch_array 函數先提取查詢結果的第一行的內容,在用 PRINT 語句顯示出來。這個函數的參數就是 mysql_query 函數傳回的整數標誌。而 mysql_fetch_array 執行成功後,記錄集指標會自動下移,這樣當再一次執行 mysql_fetch_array 時,得到的就是下一行紀錄的內容了。
陣列變數 $row 被 mysql_fetch_array 函數建立並用查詢的結果欄位來填充,陣列的每個分量對應於查詢結果的每個欄位。
如果有符合的紀錄被找到,變數$row 不會空,這時就會執行花括號中的語句:
do {
print $row["first_name"];
print
print
print
print
print
print
print
print (" ");
print $row["last_name"];
print ("");
} while($row = mysql_fetch_array($result));一do … while 迴圈。與 while 迴圈不同的是,它是先執行一次迴圈迴圈體,然後在檢查迴圈條件是否滿足。由於已經知道在紀錄集不為空的情況下,肯定至少要把循環體執行一遍,所以應該用到的是 do … while 而不是 while 循環了。在花括號中的是要執行的循環體:
print $row["first_name"];
print (" ");
print $row["last_name"];
print (>print (>print (>print ( "");
然後就是檢查while 條件是否滿足。 Mysql_fetch_array 函數再次被調用,來得到目前紀錄的內容。這個過程一直循環,當沒有下一條紀錄存在時, mysql_fetch_array 返回 false ,循環結束,紀錄集也就被完全的遍歷了一次。
mysql_fetch_array($result) 傳回的數組,不但可以用字段名來調用,也可以像一般的數組那樣,用下標來引用數組的各個分量。這樣,上面的程式碼還可以寫成這樣:
print $row[0];
print (" ");
print $row[1];

熱AI工具

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

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

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

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

在PHP中,應使用password_hash和password_verify函數實現安全的密碼哈希處理,不應使用MD5或SHA1。1)password_hash生成包含鹽值的哈希,增強安全性。 2)password_verify驗證密碼,通過比較哈希值確保安全。 3)MD5和SHA1易受攻擊且缺乏鹽值,不適合現代密碼安全。

PHP和Python各有優勢,選擇依據項目需求。 1.PHP適合web開發,尤其快速開發和維護網站。 2.Python適用於數據科學、機器學習和人工智能,語法簡潔,適合初學者。

PHP在電子商務、內容管理系統和API開發中廣泛應用。 1)電子商務:用於購物車功能和支付處理。 2)內容管理系統:用於動態內容生成和用戶管理。 3)API開發:用於RESTfulAPI開發和API安全性。通過性能優化和最佳實踐,PHP應用的效率和可維護性得以提升。

PHP是一種廣泛應用於服務器端的腳本語言,特別適合web開發。 1.PHP可以嵌入HTML,處理HTTP請求和響應,支持多種數據庫。 2.PHP用於生成動態網頁內容,處理表單數據,訪問數據庫等,具有強大的社區支持和開源資源。 3.PHP是解釋型語言,執行過程包括詞法分析、語法分析、編譯和執行。 4.PHP可以與MySQL結合用於用戶註冊系統等高級應用。 5.調試PHP時,可使用error_reporting()和var_dump()等函數。 6.優化PHP代碼可通過緩存機制、優化數據庫查詢和使用內置函數。 7

PHP仍然具有活力,其在現代編程領域中依然佔據重要地位。 1)PHP的簡單易學和強大社區支持使其在Web開發中廣泛應用;2)其靈活性和穩定性使其在處理Web表單、數據庫操作和文件處理等方面表現出色;3)PHP不斷進化和優化,適用於初學者和經驗豐富的開發者。

PHP類型提示提升代碼質量和可讀性。 1)標量類型提示:自PHP7.0起,允許在函數參數中指定基本數據類型,如int、float等。 2)返回類型提示:確保函數返回值類型的一致性。 3)聯合類型提示:自PHP8.0起,允許在函數參數或返回值中指定多個類型。 4)可空類型提示:允許包含null值,處理可能返回空值的函數。

PHP和Python各有優劣,選擇取決於項目需求和個人偏好。 1.PHP適合快速開發和維護大型Web應用。 2.Python在數據科學和機器學習領域佔據主導地位。

PHP適合web開發,特別是在快速開發和處理動態內容方面表現出色,但不擅長數據科學和企業級應用。與Python相比,PHP在web開發中更具優勢,但在數據科學領域不如Python;與Java相比,PHP在企業級應用中表現較差,但在web開發中更靈活;與JavaScript相比,PHP在後端開發中更簡潔,但在前端開發中不如JavaScript。
