php獲取表單提交
⑴ 如何將php表單提交實現提交到多個表的不同欄位
如果您想在PHP表單中實現提交到多個表的不同欄位,可以使用如下步驟來實現:
例如,如果此核腔您想插入用戶名和電子郵件到users表,並插入用戶的森衫年齡和住址到profiles表,可以這樣寫:
// 獲取用戶輸入的數據
$username = $_POST['username'];
$email = $_POST['email'];
$age = $_POST['age'];
$address = $_POST['address'];
// 連接到數氏拿據庫
$conn = mysqli_connect('localhost', 'username', 'password', 'database');
// 插入用戶名和電子郵件到users表
$sql = "INSERT INTO users (username, email) VALUES ('$username', '$email')";
mysqli_query($conn, $sql);
// 插入用戶的年齡和住址到profiles表
$sql = "INSERT INTO profiles (age, address) VALUES ('$age', '$address')";
mysqli_query($conn, $sql);
⑵ php表單怎樣提交到當前頁面,並用$_POST獲取其值
<?php
$username=$_POST['username'];
?>
<form action="" ><input type="text" name="username"><input type="submit" name="submit" value="提交"></form>
form的action屬性留空的話就直接提交到當前頁面了 後台直接$_POST獲取前台傳過來的表單域啊
⑶ 如何使用PHP獲取原生的POST數據
方法1、最常見的方法是:$_POST['fieldname'];
說明:只能接收Content-Type: application/x-www-form-urlencoded提交的數據
解釋:也就是表單POST過來的數據
方法2、file_get_contents("php://input");
說明:
允許讀取 POST 的原始數據。
和 $HTTP_RAW_POST_DATA 比起來,它給內存帶來的壓力較小,並且不需要任何特殊的 php.ini 設置。
php://input 不能用於 enctype="multipart/form-data"。
解釋:
對於未指定 Content-Type 的POST數據,則可以使用file_get_contents(「php://input」);來獲取原始數據。
事實上,用PHP接收POST的任何數據都可以使用本方法。而不用考慮Content-Type,包括二進制文件流也可以。
所以用方法二是最保險的方法
方法3、$GLOBALS['HTTP_RAW_POST_DATA'];
說明:
總是產生 $HTTP_RAW_POST_DATA 變數包含有原始的 POST 數據。
此變數僅在碰到未識別 MIME 類型的數據時產生。
$HTTP_RAW_POST_DATA 對於 enctype="multipart/form-data" 表單數據不可用
如果post過來的數據不是PHP能夠識別的,可以用 $GLOBALS['HTTP_RAW_POST_DATA']來接收,
比如 text/xml 或者 soap 等等
解釋:
$GLOBALS['HTTP_RAW_POST_DATA']存放的是POST過來的原始數據。
$_POST或$_REQUEST存放的是 PHP以key=>value的形式格式化以後的數據。
但$GLOBALS['HTTP_RAW_POST_DATA']中是否保存POST過來的數據取決於centent-Type的設置,即POST數據時 必須顯式示指明Content-Type: application/x-www-form-urlencoded,POST的數據才會存放到 $GLOBALS['HTTP_RAW_POST_DATA']中