根据文档写出相关php代码
时间: 2024-12-15 18:20:58 浏览: 4
根据文档提供的信息,以下是相关的 PHP 代码片段:
### 处理表单提交的数据 (form.php)
```php
<?php
// 检查是否提交了表单
if ($_SERVER["REQUEST_METHOD"] == "POST") {
// 获取并处理表单数据
$uname = htmlspecialchars($_POST['uname']);
$sex = isset($_POST['sex']) ? $_POST['sex'] : '你没有选择性别';
$age = intval($_POST['age']);
$psd1 = htmlspecialchars($_POST['psd1']);
$psd2 = htmlspecialchars($_POST['psd2']);
$like = implode(" ", $_POST['like']);
$color = htmlspecialchars($_POST['color']);
$jieshao = htmlspecialchars($_POST['jieshao']);
// 验证数据
if (!preg_match("/^[a-zA-Z0-9]{6,20}$/", $uname)) {
echo "姓名格式不正确!";
} elseif ($age <= 0 || $age > 100) {
echo "年龄不在有效范围内!";
} elseif (!preg_match("/^[a-zA-Z0-9!@#$%^&*]{6,10}$/", $psd1)) {
echo "密码格式不正确!";
} elseif ($psd1 !== $psd2) {
echo "两次输入的密码不一致!";
} elseif (empty($jieshao)) {
echo "个人介绍不能为空!";
} else {
// 显示表单数据
echo "姓名: $uname<br>";
echo "性别: $sex<br>";
echo "年龄: $age<br>";
echo "密码: $psd1<br>";
echo "兴趣爱好: $like<br>";
echo "喜欢的颜色: $color<br>";
echo "个人介绍: $jieshao<br>";
// 处理上传的头像
if (isset($_FILES['tximg']) && $_FILES['tximg']['error'] == 0) {
$tmp_name = $_FILES['tximg']['tmp_name'];
$file_name = $_FILES['tximg']['name'];
// 移动上传文件到指定目录
move_uploaded_file($tmp_name, "./uploads/$file_name");
// 显示上传的头像
echo "<img src='./uploads/$file_name' alt='头像'>";
} else {
echo "头像上传失败!";
}
}
}
?>
```
### HTML 表单 (4-1.html)
```html
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>表单示例</title>
<style>
input[type="text"], input[type="password"], select {
width: 280px;
height: 20px;
}
textarea {
width: 280px;
height: 60px;
}
</style>
</head>
<body>
<form action="form.php" method="post" enctype="multipart/form-data">
<table>
<tr>
<td>姓名:</td>
<td><input type="text" name="uname" id="uname" pattern="[a-zA-Z0-9]{6,20}" required></td>
</tr>
<tr>
<td>性别:</td>
<td>
<input type="radio" name="sex" value="男"> 男
<input type="radio" name="sex" value="女"> 女
</td>
</tr>
<tr>
<td>年龄:</td>
<td><input type="number" name="age" id="age" min="0" max="100" required></td>
</tr>
<tr>
<td>密码:</td>
<td><input type="password" name="psd1" id="psd1" pattern="[a-zA-Z0-9!@#$%^&*]{6,10}" required></td>
</tr>
<tr>
<td>确认密码:</td>
<td><input type="password" name="psd2" id="psd2" required></td>
</tr>
<tr>
<td>兴趣爱好:</td>
<td>
<input type="checkbox" name="like[]" value="看书"> 看书
<input type="checkbox" name="like[]" value="足球"> 足球
<input type="checkbox" name="like[]" value="音乐"> 音乐
<input type="checkbox" name="like[]" value="爬山"> 爬山
</td>
</tr>
<tr>
<td>喜欢的颜色:</td>
<td><select name="color" id="color">
<option value="红色">红色</option>
<option value="蓝色">蓝色</option>
<option value="绿色">绿色</option>
</select></td>
</tr>
<tr>
<td>个人介绍:</td>
<td><textarea name="jieshao" id="jieshao" required></textarea></td>
</tr>
<tr>
<td>上传头像:</td>
<td><input type="file" name="tximg" id="tximg"></td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="提交"></td>
</tr>
</table>
</form>
</body>
</html>
```
### 修改 php.ini 配置以支持大文件上传
编辑 `php.ini` 文件,找到以下配置项并进行修改:
```ini
upload_max_filesize = 10M
post_max_size = 15M
```
保存并重启 Web 服务器以使更改生效。这样,你可以上传最大为 10MB 的文件。
阅读全文