📅  最后修改于: 2023-12-03 15:01:14.760000             🧑  作者: Mango
在 HTML 中,
<form action="URL" method="POST" enctype="enctype-type">
<!-- 表单元素 -->
</form>
enctype-type 可以设置以下可选值:
其中,最常用的是 multipart/form-data。
在使用 enctype="application/x-www-form-urlencoded" 时,表单数据会被编码成 URL 格式。例如:
<form action="process.php" method="POST" enctype="application/x-www-form-urlencoded">
<label>用户名:</label>
<input type="text" name="username">
<br>
<label>密码:</label>
<input type="password" name="password">
<br>
<input type="submit" value="登录">
</form>
在 PHP 中可以通过 $_POST
来获取表单数据,例如:
$username = $_POST['username'];
$password = $_POST['password'];
在使用 enctype="multipart/form-data" 时,表单数据会被编码成多部分格式,可以包含二进制数据(如上传的文件)。例如:
<form action="process.php" method="POST" enctype="multipart/form-data">
<label>头像:</label>
<input type="file" name="avatar">
<br>
<label>用户名:</label>
<input type="text" name="username">
<br>
<label>密码:</label>
<input type="password" name="password">
<br>
<input type="submit" value="注册">
</form>
在 PHP 中可以通过 $_FILES
来获取上传的文件,例如:
$avatar = $_FILES['avatar'];
$username = $_POST['username'];
$password = $_POST['password'];
在使用 enctype="text/plain" 时,表单数据不会被编码,而是以纯文本形式进行提交。例如:
<form action="process.php" method="POST" enctype="text/plain">
<label>用户名:</label>
<input type="text" name="username">
<br>
<label>密码:</label>
<input type="password" name="password">
<br>
<input type="submit" value="登录">
</form>
在 PHP 中可以通过 $_POST
来获取表单数据,例如:
$data = file_get_contents('php://input');
list($username, $password) = explode("\n", $data);