【发布时间】:2018-07-01 11:37:14
【问题描述】:
我有这个代码
<?php // display file upload form
if (!isset($_POST['submit'])) { ?>
<form enctype="multipart/form-data" action="<?php echo $_SERVER['PHP_SELF']?>" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="8000000" /> Select file:
<input type="file" name="data" />
<input type="submit" name="submit" value="Upload File" /></form>
<?php
} else {
// check uploaded file size
if ($_FILES['data']['size'] == 0) {
die("ERROR: Zero byte file upload");
} // check if this is a valid upload
if (!is_uploaded_file($_FILES['data']['tmp_name'])) {
die("ERROR: Not a valid file upload"); } // set the name of the target directory
$uploadDir = "./uploads/"; // copy the uploaded file to the directory
move_uploaded_file($_FILES['data']['tmp_name'], $uploadDir . $_FILES['data']['name']) or die("Cannot copy uploaded file"); // display success message
echo '<p style="text-align: center">
Soubor byl úspěšně nahrán na server. <br>
<a href="index.php" class="button1">Zpět</a>
</p>
' ; } ?>
我有一个问题 - 它可以工作,将文件上传到服务器,但如果文件名中断,我无法下载它。例如,我想上传“我的薪水 únor.pdf”,但服务器一直在寻找文件“我的”。有没有办法修改此代码以将文件名中的中断更改为“_”?此外,我希望服务器使用 utf-8 字母(因为服务器将文件名更改为愚蠢的名称,例如 u?nor)所以如果也有这样的选项,那就太好了。 (或者只是让 php 更改文件名 inty "my_salary_unor" 谢谢大家的帮助广告建议。
【问题讨论】:
-
欢迎来到 Stack Overflow!请不要破坏您的帖子。通过在 Stack Exchange 网络上发布,您已授予 SE 分发该内容的不可撤销的权利(在 CC BY-SA 3.0 license 下)。根据 SE 政策,任何破坏行为都将被撤销。