我在这里问(因为我今天搜索了大量的互联网)
以下是这种情况: 得到一个带有一些字段的表格, 然后它有2个输入type =“file”。 关键是我希望文件A转到文件夹A,文件B转到文件夹B.
我尝试了什么:
这是projs_upload.php
$uploaddirb = '../images/projects/';
$uploaddira = '../images/projects/thumb/';
$uploadfile = $uploaddira . basename($_FILES['min_img']['name']);
$uploadimg = $uploaddirb . basename($_FILES['img']['name']);
move_uploaded_file($_FILES['min_img']['tmp_name'], $uploadfile);
move_uploaded_file($_FILES['img']['tmp_name'], $uploadimg);
这是形式:
require("common.php");
if($_POST){
$query = "
INSERT INTO projects (
`idprojects`,
`cat`,
`name`,
`desc`,
`min_img`,
`img`,
`ext_url`
) VALUES (
:idprojects,
:cat,
:name,
:desc,
:min_img,
:img,
:ext_url
)
";
$query_params = array(
':idprojects'=> "",
':cat' => $_POST['cat'],
':name' => $_POST['name'],
':desc' => $_POST['desc'],
':min_img' => $_FILES['min_img']['name'],
':img' => $_FILES['img']['name'],
':ext_url' => $_POST['exturl']
);
try
{
$stmt = $db->prepare($query);
$result = $stmt->execute($query_params);
}
catch(PDOException $ex)
{
die("Failed to run query: " . $ex->getMessage());
}
include ("funcs/proj_uploads.php");
header("Location: ?p=manage_projects");
die("Redirecting done");
}
<form action="?p=manage_projects" method="post" enctype="multipart/form-data">
<input type="text" placeholder="kategoria" name="cat" />
<input type="text" placeholder="nazwa projektu" name="name" />
<input type="text" placeholder="link do projektu" name="exturl" />
<textarea placeholder="opis" name="desc" />
</textarea>
<input type="hidden" name="MAX_FILE_SIZE" value="512000" />
<input type="file" placeholder="miniatura" name="img" />
<input type="file" placeholder="duży" name="img" />
<button type="submit" class="expand">Zapisz</button>
</form>
和“?p = manage_projects”指的是表单页面。
答案 0 :(得分:1)
您的$uploaddirb
路径需要以/
结尾,否则文件将作为文件images/projects
上传到thumbsomename
:
$uploaddirb = '../images/projects/thumb/';
如果这不能解决问题,请用更多信息更新您的问题,即HTML和PHP代码,这两个文件都不起作用吗?您是否检查了目录是否存在且具有适当的权限?
答案 1 :(得分:0)
您的file input
标记均称为img
。
你应该有一个叫img
,一个叫min_img
所以:
<input type="file" placeholder="miniatura" name="min_img" />
<input type="file" placeholder="duży" name="img" />
而不是:
<input type="file" placeholder="miniatura" name="img" />
<input type="file" placeholder="duży" name="img" />
注意:您的var_dump($_FILES)
区块中if($_POST)
很容易发现这一点。