我的脚本与.txt文件以外的输入文件完美配合。 我真的不知道它有什么不对。但是,如果我打开其他扩展程序(如.csv,.rar,.zip等)它可以工作,我在$ _POST上得到了一些东西。 但是,如果我使用任何* .txt文件,我只需在$ _POST上获取数组null。
如果我使用此代码:
$sListText = file_get_contents("act20170713.txt");
echo "<br/>".nl2br($sListText);
它的工作完美无缺。但如果我使用:
$fileexcel = $_FILES['txt']['tmp_name'];
echo $fileexcel;
我的数组只有* .txt文件
有人可以向我解释或者可能有解决方案吗? 任何答案将不胜感激。提前谢谢。
亲切的问候, Fondra
我添加了一些截图以获取更多细节 enter image description here
完整代码:
<form action="" method="post" enctype="multipart/form-data" name="form2" id="form2">
<div class="row">
<div class="col-md-3">
<input id="file" type="file" name="txt" style="text-align:right;-moz-opacity:0;filter:alpha(opacity:0);opacity:1;z-index: 2;"/>
</div>
<div class="col-md-3" style="padding-left:4.5%"><input type="submit" name="list" class="btn btn-info" value="Show"/></div>
<div class="col-md-3"></div>
<div class="col-md-3" ><input type="submit" name="clear" class="btn btn-default" value="Clear" style="float:right"/></div>
</div>
</form>
<?php if (isset($_POST['list'])){
var_dump($_FILES);
$fileexcel = $_FILES['txt']['tmp_name'];
echo $fileexcel;
print_r($_FILES['txt']);
//echo "test";
//$sListText = file_get_contents("act20170713.txt");
//$data = explode("\n", $sListText);
?}
答案 0 :(得分:1)
我认为您可以var_dump($_FILEs)
查看,并检查您的HTML表单是否有enctype="multipart/form-data"
答案 1 :(得分:0)
这是关于如何阅读我在W3Schools上找到的文本文件的PHP 5。
<?php
$myfile = fopen("webdictionary.txt", "r") or die("Unable to open file!");
echo fread($myfile,filesize("webdictionary.txt"));
fclose($myfile);
?>
希望有所帮助。
答案 2 :(得分:0)
txt文件是否更大?也许PHP在文件大小上窒息?检查upload_max_filesize
和post_max_size
php配置设置 - 我发现文件超出post_max_size
的情况没有返回任何错误,类似于您的情况。