php - 在 PHP 中上传多个文件失败
问题描述
我想使用 PHP 在单个提交按钮中上传多个文件,但它不起作用,我尝试使用 php 上传单个文件,它运行良好,所以我认为为第二个文件复制相同的代码会很好上传了两个文件但徒劳无功。
我曾在 SO 上尝试过此解决方案,但没有成功:solution1
<form action="" method="post" target="frame" enctype = "multipart/form-data">
<div class="buttonsend">
<p>Entrez votre fichier.cfg :</p>
<input type = "file" name = "cfg" /></br>
<p>Entrez votre fichier.dat :</p>
<input type = "file" name = "dat" /></br></br>
<button id="send" type="submit" name="send">Générer</button>
</div>
</form>
<?php
if (isset($_POST['send'])) {
$file_tmpcfg = $_FILES['cfg']['tmp_name'];
$file_namecfg = $_FILES['cfg']['name'];
move_uploaded_file($file_tmpcfg,"/home/imagesdcard/www/".$file_namecfg);
$file_tmpdat = $_FILES['dat']['tmp_name'];
$file_namedat = $_FILES['dat']['name'];
move_uploaded_file($file_tmpdat,"/home/imagesdcard/www/".$file_namedat);
}
?>
解决方案
它工作正常。我打印了上传的文件,它没有显示任何错误。
<form action="" method="post" target="frame" enctype = "multipart/form-data">
<div class="buttonsend">
<p>Entrez votre fichier.cfg :</p>
<input type = "file" name = "cfg" /></br>
<p>Entrez votre fichier.dat :</p>
<input type = "file" name = "dat" /></br></br>
<button id="send" type="submit" name="send">Générer</button>
</div>
</form>
<?php
if (isset($_POST['send'])) {
$uploaddir = '/var/www/html/';
$uploadfileCfg = $uploaddir . basename($_FILES['cfg']['name']);
$uploadfileDat = $uploaddir . basename($_FILES['dat']['name']);
echo "<p>";
if (move_uploaded_file($_FILES['cfg']['tmp_name'], $uploadfileCfg)) {
echo "File cfg is valid, and was successfully uploaded.\n<br>";
}else{
echo "File cfg is invalid";
}
if (move_uploaded_file($_FILES['dat']['tmp_name'], $uploadfileDat)) {
echo "File dat is valid, and was successfully uploaded.\n<br>";
}else{
echo "File dat is invalid";
}
echo "</p>";
echo '<pre>';
echo 'Here is some more debugging info:<br>';
print_r($_FILES);
print "</pre>";
}
?>
结果:
File cfg is valid, and was successfully uploaded.
File dat is valid, and was successfully uploaded.
Here is some more debugging info:
Array
(
[cfg] => Array
(
[name] => 102440.jpg
[type] => image/jpeg
[tmp_name] => /tmp/phpQdhjY0
[error] => 0
[size] => 72469
)
[dat] => Array
(
[name] => 1plus1.pem
[type] => application/x-x509-ca-cert
[tmp_name] => /tmp/phpId9rW1
[error] => 0
[size] => 1692
)
)
推荐阅读
- php - 搜索具有既定标准 php 的文件
- javascript - 在 PHP while 循环中唯一标识 Javascript 模态
- c++ - 使用 cout 时,我可以设置一个变量来改变浮点域吗?
- c - 只返回空格和字母的函数
- php - 在 wordpress 插件类中将钩子从构造函数更改为 init - 不再工作
- npm - npm -S 标志是什么意思?
- javascript - 在 vuejs 中提交表单,我应该使用表单标签吗?
- java - Java中应用于时间戳而不是索引的滑动窗口算法
- redux-saga - 在 saga 中进行的 API 调用的结果为空
- oracle - SQL*Plus > 当前日期是否在系统变量或某种类型中可用?