我目前正在使用PHP 创建文件上传系统。我从互联网上获得了帮助并成功完成了这个项目。
但问题是上传后 FileName 会变成复杂的东西。例如:5987fff5b3dd83.21913884。
上传后有没有办法保留原来的名字。目前位置位于 Localhost ,但稍后我必须将其上传到我的网站。
index.php的代码
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<form action="upload.php" method="POST" enctype="multipart/form-data">
<input type="file" name="file">
<button type="submit" name="submit">UPLOAD</button>
</form>
</body>
</html>
upload.php的代码
<?php
if (isset($_POST['submit'])) {
$file = $_FILES['file'];
$fileName = $file['name'];
$fileTmpName = $file['tmp_name'];
$fileSize = $file['size'];
$fileError = $file['error'];
$fileType = $file['type'];
$fileExt = explode('.', $fileName);
$fileActualExt = strtolower(end($fileExt));
$allowed = array('jpg', 'jpeg', 'png', 'pdf');
if (in_array($fileActualExt, $allowed)) {
if ($fileError === 0) {
if ($fileSize < 1000000) {
$fileNameNew = uniqid('', true).".".$fileActualExt;
$fileDestination = 'uploads/'.$fileNameNew;
move_uploaded_file($fileTmpName, $fileDestination);
echo "OK";
header("Location: ab.html");
} else {
echo "Your file is too big!";
}
} else {
echo "There was an error uploading your file!";
}
} else {
echo "You cannot upload files of this type!";
}
}
请建议解决问题的可行方法。
此致
严厉的Bansal
答案 0 :(得分:0)
评论此行
$fileNameNew = uniqid('', true).".".$fileActualExt;
如何发表评论
// $fileNameNew = uniqid('', true).".".$fileActualExt;
您使用的是uniqid函数,它会生成新的文件名。
然后添加
$fileNameNew = $fileName;
答案 1 :(得分:0)
您正在做的是将随机值分配给名称
$fileNameNew = uniqid('', true).".".$fileActualExt;
这样做
$fileNameNew = $fileName;