gpt4 book ai didi

php - 使用 pdo 更新图像时,文件夹名称将成为数据库中的值

转载 作者:行者123 更新时间:2023-11-29 17:17:57 25 4
gpt4 key购买 nike

我尝试更新数据库中的图片,但数据库中的值变成这样:user_images/photo.jpg它应该只是 photo.jpg 但为什么后面跟着文件夹名称?这也导致照片无法保存在文件夹中。

这是编辑表单

<?php 
$id = $_GET['id'];
$edit = $db_con->query("SELECT foto FROM mahasiswa WHERE nim='$id'");
$row = $edit->fetch(PDO::FETCH_ASSOC);
?>
<div class="panel panel-default">
<!-- Default panel contents -->
<div class="panel-body">
<form action="" method="POST" class="form-horizontal" enctype="multipart/form-data" role="form">
<div class="form-group">
<center>
<legend>Upload Foto Profil Mahasiswa </legend>
</center>
</div>

<div class="form-group">
<label for="input" class="col-sm-4 control-label">Pas Foto Mahasiswa :</label>
<div class="col-sm-6">
<p>
<input type="hidden" name="nim" value="<?php echo $id; ?>">
<input class="input-group" required="required" type="file" name="foto" accept="image/*" />
</p>
</div>
</div>


<div class="form-group">
<div class="col-sm-6 col-sm-offset-4">
<button type="submit" name="edit_foto" class="btn btn-primary">Update</button>
<a href="?apps=ubahmhs" class="btn btn-warning">Batal</a>
</div>
</div>
</form>
</div>
</div>

这就是过程

<?php 

if (isset($_POST['edit_foto'])) {
try{
$path="user_images/" . basename($_FILES['foto']['name']);
move_uploaded_file($_FILES['foto']['tmp_name'], $path);
$edit = $db_con->prepare("UPDATE mahasiswa SET foto=:foto WHERE nim=:nim");
$edit->bindParam(":nim", $_POST['nim']);
$edit->bindParam(":foto", $path);
$edit->execute();
echo "<script>location.href='?apps=ubahmhs';</script>";
exit();
}
catch (PDOException $e) {
echo $e->getMessage();
}
}
else {'location=apps/app_ubahmhs/view.php'; }

?>

我非常需要你的帮助。感谢之前的每一个回复

最佳答案

您正在使用 $path 将图像名称保存在数据库中,其中包含 user_images 以及文件名。您应该将文件名保存在单独的变量中,如下所示:

$imageName = basename($_FILES['foto']['name']);
$path="user_images/" . $imageName;

然后在绑定(bind)参数时使用:

$edit->bindParam(":foto", $imageName);

关于php - 使用 pdo 更新图像时,文件夹名称将成为数据库中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51441462/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com