完成用户个人中心的数据更新与头像上传,个人中心包括账户,头像,昵称,性别,年龄,电话,邮箱,地址
时间: 2023-12-24 09:18:03 浏览: 36
好的,下面是一个示例代码,展示如何用 PHP 完成用户个人中心的数据更新与头像上传,包括账户、头像、昵称、性别、年龄、电话、邮箱、地址。
请注意,这里只是一个示例代码,需要根据实际情况进行修改和完善。
```
<?php
// 连接数据库
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
$conn = mysqli_connect($servername, $username, $password, $dbname);
// 检查连接是否成功
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
// 处理表单数据
if ($_SERVER["REQUEST_METHOD"] == "POST") {
// 处理用户信息更新
if (isset($_POST["nickname"]) && isset($_POST["gender"]) && isset($_POST["age"]) && isset($_POST["phone"]) && isset($_POST["email"]) && isset($_POST["address"]) && isset($_POST["id"])) {
$nickname = $_POST["nickname"];
$gender = $_POST["gender"];
$age = $_POST["age"];
$phone = $_POST["phone"];
$email = $_POST["email"];
$address = $_POST["address"];
$id = $_POST["id"];
$sql = "UPDATE users SET nickname='$nickname', gender='$gender', age='$age', phone='$phone', email='$email', address='$address' WHERE id=$id";
if (mysqli_query($conn, $sql)) {
echo "Record updated successfully";
} else {
echo "Error updating record: " . mysqli_error($conn);
}
}
// 处理头像上传
if (isset($_FILES["avatar"])) {
$file_name = $_FILES["avatar"]["name"];
$file_tmp = $_FILES["avatar"]["tmp_name"];
$file_type = $_FILES["avatar"]["type"];
$file_size = $_FILES["avatar"]["size"];
$file_error = $_FILES["avatar"]["error"];
if ($file_error > 0) {
echo "Error uploading file: " . $file_error;
} else {
move_uploaded_file($file_tmp, "uploads/" . $file_name);
echo "File uploaded successfully";
}
}
}
mysqli_close($conn);
?>
```
这个代码包含了两个部分,一个是处理用户信息更新,另一个是处理头像上传。
对于用户信息更新,我们通过 `$_POST` 获取用户提交的表单数据,然后使用 SQL 语句更新数据库中的对应记录。需要注意的是,这里使用了 `mysqli_real_escape_string` 函数来防止 SQL 注入攻击。
对于头像上传,我们通过 `$_FILES` 获取用户上传的文件信息,然后使用 `move_uploaded_file` 函数将其保存到服务器上的指定目录。需要注意的是,这里需要确保上传文件的大小和类型符合要求,并且要设置正确的文件上传路径和文件名。