我真的检查了所有内容,并完成了所有示例,但没有找到解决方案。基本上我要做的就是简单地上传XML文件并将其存储到特定文件夹。该文件夹已创建,我使用的是XAMPP localhost。
我的代码如下所示:
HTML
<form action="<?php echo $_SERVER['PHP_SELF'];?>" method="POST" enctype="multipart/form-data">
<div class="row">
<div class="form-group col-lg-4 col-md-4 col-xs-4 col-sm-4">
<input type="file" name="fileToUpload" id="fileToUpload" accept="text/xml">
</div>
</div>
<div class="row">
<div class="col-lg-4 col-md-4 col-xs-4 col-sm-4">
<button type="submit" class="btn btn-default" id="uploadFile" name="uploadFile" style="width: 100%">Upload</button>
</div>
</div>
</form>
PHP
<?php
if (isset($_POST['uploadFile'])) {
$name = $_FILES["fileToUpload"]["name"];
$tmp_name = $_FILES['fileToUpload']['tmp_name'];
$location = 'uploads/';
move_uploaded_file($tmp_name, $location.$name);
//also tried this -> copy($tmp_name, $location.$name);
}
?>
提前致谢,
乙
答案 0 :(得分:0)
如果您正在尝试检查上传的文件,那就不是这样了。使用类似is_uploaded_file
的内容:
if(is_uploaded_file($_FILES['fileToUpload']['tmp_name'])) { # note the tmp_name, don't change this
# handling goes here
}
您的代码无效,因为您正在检查没有值的参数(因为您从未为按钮指定value
属性)。此外,不建议在按钮中传递值;如果您需要此类行为(在这种情况下,您不需要),请使用<input type="hidden" name="your-name" value="your-value" />
。
答案 1 :(得分:0)
所以在经历了2天的痛苦之后,我仍然没有找到解决这个问题的具体方案,但至少我发现它并没有对PHP / HTML代码产生任何影响,但它与服务器有关。 。要连接到本地服务器,我使用XAMPP。
首先,我尝试重新安装它(到同一路径--D磁盘分区) - 没有改变任何东西。
其次,我尝试在C盘上安装它 - 仍然没有
第三,我安装了WAMP,但仍然无法正常工作。我在其他服务器上测试了我的代码,它就像一个魅力。
结论:服务器甚至无法识别提交的表单(IF条件永远不会成立)。
如果有人知道XAMPP的哪个部分或任何其他AMP必须对它做任何事情,请告诉我。我真的很感激。
提前致谢
答案 2 :(得分:0)
[FIXED] 所以,最后..最终因为它使用了..最愚蠢的事情导致最大的混乱。
无论如何,我使用PhpStorm作为我的IDE,它有自己的内置服务器。即使我确实设置了我的参数(php解释器和运行配置),但是发生了PhpStorm自动使用另一台服务器而不是我的(我应该先注意端口,但是你们......)。为什么这首先发生的原因是因为xampp的文档root directoy并不是我存储项目的那个。
你可以做两件事:
并替换&#34; C:/ xampp / htdocs&#34;使用您自己的路径(包括项目文件夹本身)并再次启动Apache和MySql。 注意如果您不包含主项目文件夹但包含其父文件夹,那么运行代码时的路径将是localhost:port / projectMainFolder / others
至于我,你可以锁定这个主题,因为我找到了一个解决方案。再次感谢大家的帮助!