对不起,如果这很容易,但我对编程有点陌生,所以我有问题重命名临时上传的文件。下面是我的代码:
HTML:<input type="file" class="upload-img" name="logo" id="image" accept="image/*" />
PHP: if(move_uploaded_file($_FILES['logo'] ['tmp_name'], "images/".[logo])) {
print '<p> Your image has been uploaded </p>';
} else {
print '<p> There was an error with the image</p>';
}
有没有人能告诉我如何正确地将临时上传的图像重命名为"徽标"?
我目前得到一个错误说:
警告:fopen(images/logo.png): failed to open stream: No such file或1443行/home/matos/public_html/pdftest/tfpdf.php中的目录FPDF错误:无法打开图像文件:images/logo.png
首先您应该知道文件的类型。$_FILES['logo']['type']
会给出它的类型。检查下面的代码。
$extension = explode("/", $_FILES['logo']['type']);
$rename="logo.".$extension[1];
if(move_uploaded_file($_FILES['logo']['tmp_name'], "images/" . $rename)) {
print '<p> Your image has been uploaded </p>';
} else {
print '<p> There was an error with the image</p>';
}
images文件夹的绝对路径是什么?
我假设表单提交文件到/pdftest/tfpdf.php
和/home/matos/public_html/pdftest/tfpdf.php是脚本句柄上传的文件。如果images文件夹的绝对路径是/home/matos/public_html/images你的代码应该是
move_uploaded_file($_FILES['logo'] ['tmp_name'], "../images/logo.png")
因为你的上下文的基本路径是主脚本的文件夹,我假设是/pdftest/tfpdf.php,它是/home/matos/public_html/pdftest/在你的本地。当您保存上传的文件时,实际路径将是
/home/matos/public_html/pdftest/../images/logo.png
shorted /home/matos/public_html/images/logo.png