我想将docx上传到此位置“C:\ XAMMP \ htdocs \ FYP3 \ uploads /” 以下是我上传文件的代码。现在,在我点击上传后,我甚至无法在给定的地址中找到我的文件。不确定错误是什么。在此先感谢:)
if(isset($_FILES['file']))
{
$file=$_FILES['file'];
$file_name=$file['name'];
$file_tmp = $file['tmp_name'];
$file_size = $file['size'];
$file_error = $file['error'];
$file_ext = explode('.',$file_name);
$file_ext = strtolower(end($file_ext));
$allowed=array('docx', 'jpg');
if(in_array($file_ext, $allowed))
{
if($file_error === 0)
{
if($file_size <= 2097152)
{
$file_name_new = uniqid('', true) . '.' . $file_ext;
$file_destination = "C:\XAMMP\htdocs\FYP3\uploads/" . $file_name_new;
if(move_uploaded_file($file_tmp, $file_destination))
{
echo $file_destination;
}
}
}
}
}
以下是我的表格代码:)
<form action="homepage.php" method="post" enctype="multipart/form-data">
<input type="file" name="file">
<input type="submit" value="upload">
</form>
答案 0 :(得分:0)
首先请检查方法属性,它必须是post然后检查其enc-type属性,它必须是multipart-form数据。如果这两件事都没问题,那么在您的Php代码块中使用print_r($ file)如果表单成功发布了该文件,那么这将打印该文件的所有属性。如果到目前为止一切都很好,那么检查目标路径和目录权限,可能是你没有写入文件的权限。我想“C:\ XAMMP \ htdocs \ FYP3 \ uploads /”。 $ file_name_new;最后一个斜杠“uploads /”格式错误。请检查一下。 就是这样。
答案 1 :(得分:0)
$file_destination
在两个方面不正确:&#34; XAMMP&#34;拼写错误,它应该是&#34; XAMPP&#34;。你必须使用&#34; \\&#34;或&#34; /&#34;作为路径分离器。
$file_destination = "C:\\XAMPP\\htdocs\\FYP3\\uploads\\" . $file_name_new;
此外,您应该使用is_writable()检查目标目录是否已创建和可写。
答案 2 :(得分:0)
目的地路径有问题。试试这个:
替换
$file_destination = "C:\XAMMP\htdocs\FYP3\uploads/" . $file_name_new;
带
$file_destination = "C:/XAMMP/htdocs/FYP3/uploads/" . $file_name_new;