PHP制作一个用户注册页面。表单是实现网站互动功能的重要组成部分,主要用于收集客户端提交的信息,并且将用户提交的信息显示打印输出。制作用户注册页面。创建一个表单,创建表单内容有:用户名(文本框name属性值:自己的姓名拼名首字母)、密码(密码框name属性值为:自己的学号)、照片(格式为.jpg)、爱好(读书、下棋、绘图)。通过POST()方法将各元素值提交到服务器,再通过$_POST[]预定义变量来获取提交的值。 要求: 1、用户注册页面中,用户名对应的文本框name属性值为:LWZ. 3、用户注册页面中,密码对应的文本框name属性值为:123. 4、3、照片的格式为.jpg,如果不是.jpg,则给出提示信息“照片的格式不是.jpg,请重新选择上传的照片。” 4、通过POST()方法,将各元素值提交到服务器,并将上传的照片从服务器的临时目录移动到C:\wamp64\www\img这个文件夹中。
时间: 2024-02-23 19:02:10 浏览: 58
以下是PHP代码实现:
```php
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>用户注册</title>
</head>
<body>
<form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>" method="post" enctype="multipart/form-data">
<label for="username">用户名:</label>
<input type="text" id="username" name="LWZ" required><br><br>
<label for="password">密码:</label>
<input type="password" id="password" name="123" required><br><br>
<label for="photo">照片:</label>
<input type="file" id="photo" name="photo" accept=".jpg" required><br><br>
<label for="hobby">爱好:</label>
<select id="hobby" name="hobby">
<option value="reading">读书</option>
<option value="chess">下棋</option>
<option value="drawing">绘图</option>
</select><br><br>
<input type="submit" value="提交">
</form>
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$username = $_POST["LWZ"];
$password = $_POST["123"];
$hobby = $_POST["hobby"];
$target_dir = "C:/wamp64/www/img/";
$target_file = $target_dir . basename($_FILES["photo"]["name"]);
$imageFileType = strtolower(pathinfo($target_file,PATHINFO_EXTENSION));
if($imageFileType != "jpg") {
echo "照片的格式不是.jpg,请重新选择上传的照片。";
} else {
if (move_uploaded_file($_FILES["photo"]["tmp_name"], $target_file)) {
echo "注册成功!<br>";
echo "用户名:" . $username . "<br>";
echo "密码:" . $password . "<br>";
echo "爱好:" . $hobby . "<br>";
echo "照片:" . basename($_FILES["photo"]["name"]) . "<br>";
} else {
echo "照片上传失败,请重试。";
}
}
}
?>
</body>
</html>
```
代码解释:
1. `enctype="multipart/form-data"` 是为了支持上传文件。
2. `htmlspecialchars($_SERVER["PHP_SELF"])` 是为了防止跨站脚本攻击。
3. `accept=".jpg"` 是为了限制只能上传.jpg格式的照片。
4. `strtolower(pathinfo($target_file,PATHINFO_EXTENSION))` 是为了获取上传文件的后缀名,并将其转换为小写字母。
5. `move_uploaded_file` 是将上传的文件从临时目录移动到指定目录。
6. `$_FILES["photo"]["name"]` 是获取上传文件的文件名。
阅读全文