【发布时间】:2025-12-31 19:50:01
【问题描述】:
我正在创建一个社交网络,让用户可以选择更改他们的个人资料图片或保持不变(默认)。我问了一个关于这个的问题,并得到了一个答案,帮助我将图片保存到我的上传文件夹中,但不知道如何更改用户的个人资料照片。
用户将单击“选择文件”按钮,然后选择“选择”更改配置文件“图片的按钮时。当他们完成所有这些操作时,我希望将默认图片更改为用户选择的图片。有人可以帮帮我吗 ?
profile.php:
<form id="form2" action="upload.php" method="post" enctype="multipart/form-data">
<p id="p1">Change profile picture:</p> <br />
<input type="file" name="fileToUpload" id="fileToUpload"><br />
<br><input id="sub1" type="submit" value="Change profile picture" name="submit"><br />
</form>
<!-- Trigger the Modal -->
<img id="myImg" src="default.png" width="200" height="150">
<!-- The Modal -->
<div id="myModal" class="modal">
<!-- The Close Button -->
<span class="close" onclick="document.getElementById('myModal').style.display='none'">×</span>
<!-- Modal Content (The Image) -->
<img class="modal-content" id="img01">
<!-- Modal Caption (Image Text) -->
<div id="caption"></div>
</div>
<script>
// Get the modal
var modal = document.getElementById('myModal');
// Get the image and insert it inside the modal - use its "alt" text as a caption
var img = document.getElementById('myImg');
var modalImg = document.getElementById("img01");
var captionText = document.getElementById("caption");
img.onclick = function(){
modal.style.display = "block";
modalImg.src = this.src;
captionText.innerHTML = this.alt;
}
// Get the <span> element that closes the modal
var span = document.getElementsByClassName("close")[0];
// When the user clicks on <span> (x), close the modal
span.onclick = function() {
modal.style.display = "none";
}
</script>
更新!!
我更新了我的代码以保存图像,然后将其保存在数据库中,但所有这些代码所做的只是将其保存在我的图像文件夹中,而不是将其保存在我的数据库中。请帮帮我。
上传.php:
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
include("connect.php");
include("auth_login.php");
$target_dir = "images/uploads/";
$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
$uploadOk = 1;
$imageFileType = pathinfo($target_file,PATHINFO_EXTENSION);
// Check if image file is a actual image or fake image
if(isset($_POST["change"])) {
move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file);
$q = mysqli_query ($conn, "UPDATE users SET userPic = '".$_FILES['fileToUpload']
['name']."' WHERE username = '" . $username . "'");
if($check !== false) {
echo "File saved - " . $check["mime"] . ".";
$uploadOk = 1;
} else {
echo "File is not an image.";
$uploadOk = 0;
}
}
【问题讨论】:
-
我认为你需要一个数据库,在那里,首席。
-
我有一个带用户表的。该表有 id,username,pw 和 email 。我应该使用同一张桌子还是不同的桌子?
标签: javascript php jquery html