選單
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

PHP 教程

PHP HOME PHP 簡介 PHP 安裝 PHP 語法 PHP 註釋 PHP 變數 PHP Echo / Print PHP 資料型別 PHP 字串 PHP 數字 PHP 型別轉換 PHP 數學 PHP 常量 PHP 魔術常量 PHP 運算子 PHP If...Else...Elseif PHP Switch PHP 迴圈 PHP 函式 PHP 陣列 PHP 超全域性變數 PHP 正則表示式

PHP 表單

PHP 表單處理 PHP 表單驗證 PHP 表單必填項 PHP 表單 URL/電子郵件 PHP 表單完成

PHP 高階

PHP 日期和時間 PHP Include PHP 檔案處理 PHP 檔案開啟/讀取 PHP 檔案建立/寫入 PHP 檔案上傳 PHP Cookies PHP Sessions PHP 過濾器 PHP 高階過濾器 PHP 回撥函式 PHP JSON PHP 異常

PHP OOP

PHP 什麼是 OOP PHP 類/物件 PHP 建構函式 PHP 解構函式 PHP 訪問修飾符 PHP 繼承 PHP 常量 PHP 抽象類 PHP 介面 PHP Trait PHP 靜態方法 PHP 靜態屬性 PHP 名稱空間 PHP 可迭代物件

MySQL 資料庫

MySQL 資料庫 MySQL 連線 MySQL 建立資料庫 MySQL 建立表 MySQL 插入資料 MySQL 獲取最後 ID MySQL 插入多條資料 MySQL 預處理 MySQL 查詢資料 MySQL Where MySQL Order By MySQL 刪除資料 MySQL 更新資料 MySQL 限制資料

PHP XML

PHP XML 解析器 PHP SimpleXML 解析器 PHP SimpleXML - 獲取 PHP XML Expat PHP XML DOM

PHP - AJAX

AJAX 簡介 AJAX PHP AJAX 資料庫 AJAX XML AJAX 即時搜尋 AJAX 投票

PHP 示例

PHP 示例 PHP 編譯器 PHP 測驗 PHP 練習 PHP 伺服器 PHP 證書

PHP 參考手冊

PHP 概述 PHP 陣列 PHP 日曆 PHP 日期 PHP 目錄 PHP 錯誤 PHP 異常 PHP 檔案系統 PHP 過濾器 PHP FTP PHP JSON PHP 關鍵詞 PHP Libxml PHP 郵件 PHP 數學 PHP 雜項 PHP MySQLi PHP 網路 PHP 輸出控制 PHP 正則表示式 PHP SimpleXML PHP Stream PHP String PHP 變數處理 PHP XML 解析器 PHP 壓縮 PHP 時區

PHP 表單處理


PHP 超全域性變數 $_GET$_POST 用於收集表單資料。


PHP - 一個簡單的 HTML 表單

下面的例子展示了一個簡單的 HTML 表單,包含兩個輸入欄位和一個提交按鈕

示例

<html>
<body>

<form action="welcome.php" method="POST">
Name: <input type="text" name="name"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit">
</form>

</body>
</html>
執行示例 »

當用戶填寫完上面的表單並點選提交按鈕時,表單資料將透過 HTTP POST 方法傳送到名為 "welcome.php" 的 PHP 檔案進行處理。

要顯示提交的資料,您可以簡單地 echo 所有變數。

"welcome.php" 檔案內容如下

<html>
<body>

Welcome <?php echo $_POST["name"]; ?><br>
Your email address is: <?php echo $_POST["email"]; ?>

</body>
</html>

輸出可能如下

Welcome John
Your email address is john.doe@example.com

使用 HTTP GET 方法也可以達到相同的結果

示例

相同的例子,但 method 設定為 GET 而不是 POST

<html>
<body>

<form action="welcome_get.php" method="GET">
Name: <input type="text" name="name"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit">
</form>

</body>
</html>
執行示例 »

"welcome_get.php" 檔案內容如下

<html>
<body>

Welcome <?php echo $_GET["name"]; ?><br>
Your email address is: <?php echo $_GET["email"]; ?>

</body>
</html>

上面的程式碼非常簡單,不包含任何驗證。

您需要驗證表單資料以保護您的指令碼免受惡意程式碼的侵害。

處理 PHP 表單時請考慮安全性!

此頁面不包含任何表單驗證,僅展示如何傳送和檢索表單資料。

但是,接下來的頁面將展示如何以安全的方式處理 PHP 表單!正確驗證表單資料對於保護您的表單免受駭客和垃圾郵件傳送者的侵害非常重要!



GET 與 POST

GET 和 POST 都會建立一個數組(例如:array( key1 => value1, key2 => value2, key3 => value3, ...))。該陣列包含鍵值對,其中鍵是表單控制元件的名稱,值是使用者輸入的資料。

GET 和 POST 都被處理為 $_GET 和 $_POST。它們是超全域性變數,這意味著它們始終可訪問,無論作用域如何——您可以從任何函式、類或檔案中訪問它們,而無需進行任何特殊操作。

$_GET 是一個變數陣列,透過 URL 引數傳遞給當前指令碼。

$_POST 是一個變數陣列,透過 HTTP POST 方法傳遞給當前指令碼。


何時使用 GET?

使用 GET 方法從表單傳送的資訊**對所有人可見**(所有變數名和值都會顯示在 URL 中)。GET 對傳送資訊量也有限制。限制約為 2000 個字元。然而,由於變數顯示在 URL 中,因此可以收藏該頁面。這在某些情況下可能很有用。

GET 可用於傳送非敏感資料。

注意: GET 絕不應用於傳送密碼或其他敏感資訊!


何時使用 POST?

使用 POST 方法從表單傳送的資訊**對他人不可見**(所有名稱/值都嵌入在 HTTP 請求的正文中),並且對傳送資訊量**沒有限制**。

此外,POST 支援高階功能,例如支援在將檔案上傳到伺服器時進行多部分二進位制輸入。

然而,由於變數不顯示在 URL 中,因此無法收藏該頁面。

開發人員更傾向於使用 POST 來發送表單資料。

接下來,讓我們看看如何安全地處理 PHP 表單!



×

聯絡銷售

如果您想將 W3Schools 服務用於教育機構、團隊或企業,請傳送電子郵件給我們
sales@w3schools.com

報告錯誤

如果您想報告錯誤,或想提出建議,請傳送電子郵件給我們
help@w3schools.com

W3Schools 經過最佳化,旨在方便學習和培訓。示例可能經過簡化,以提高閱讀和學習體驗。教程、參考資料和示例會不斷審查,以避免錯誤,但我們無法保證所有內容的完全正確性。使用 W3Schools 即表示您已閱讀並接受我們的使用條款Cookie 和隱私政策

版權所有 1999-2024 Refsnes Data。保留所有權利。W3Schools 由 W3.CSS 提供支援