2017-07-18 14 views
0

私は、.txtファイル以外の入力ファイルと完全に動作するスクリプトを持っています。 私は本当に何が間違ってそれで間違っていない。しかし、他の拡張子(.csv、.rar、.zipなど)を開くと、それは動作し、私の$ _POSTに何かがあります。 しかし、私は任意の* .txtファイルと一緒に私はちょうど$ _POST上で配列nullを取得します。PHP cantはtxtファイルを読み込みません

私はこのコードを使用する場合:

$sListText = file_get_contents("act20170713.txt"); 
echo "<br/>".nl2br($sListText); 

そのだけで完璧に動作します。私が使用している場合でも:

$fileexcel = $_FILES['txt']['tmp_name']; 
echo $fileexcel; 

私は* .txtファイルで

を配列はnullを持って誰かが私にそれを説明したり、多分それのためのソリューションを持っていることはできますか? すべての回答をいただければ幸いです。少し早いですがお礼を。

敬具、 Fondra

私は詳細についてはいくつかのスクリーンショットを追加し

enter image description here

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

'print_r($ _ FILES)'を見つけてください。そうでなければ、HTTPリクエストダンプとsubmitフォームを提供してください。 – mario

+0

私はArray nullを返しました。ファイルが.txtファイルの場合。唯一の問題です。 ファイルが.txtファイルでない場合、それはちょうど完全に動作します –

答えて

0

は非常に大きなtxtファイルです持っていますか?おそらく、PHPがファイルサイズを窒息させているのでしょうか? upload_max_filesizepost_max_sizeのPHPの設定を確認してください - ファイルがpost_max_sizeを超え、状況に似たエラーが返されない場合があります。

+0

を参照してコードを貼り付けることができると思う。それは問題です。それは9.988.894の長さと44.534行を持っています。おかげさまで u、私は唯一の問題を発見したので。 –

0

これは読み方にPHP 5のためでありますW3Schoolsで見つけたテキストファイル。

<?php 
$myfile = fopen("webdictionary.txt", "r") or die("Unable to open file!"); 
echo fread($myfile,filesize("webdictionary.txt")); 
fclose($myfile); 
?> 

Source

お役に立てば幸いです。私はあなたがvar_dump($_FILEs)見て、あなたのHTMLフォームをチェックすることができると思い

+0

私は手動で ".txt"ファイルを読むことができますが、私はそれを動的に読みたいと思います。 だから私はなぜ "入力ファイル"を使用しようとする。 しかし、それはtxtファイルで動作しませんが、CSVや他のファイルでうまく動作します –

1

enctype="multipart/form-data"

+0

申し訳ありませんが、 そのような入力ファイルは* .txtファイルからの入力をブロックします(文字通り)。 でも、私はvar_dumpを使用しています。私はちょうど配列nullを持っています。 しかし、それは他の拡張子(.csvなど)と完全に動作します –

+0

私はあなたが – vincenth520

関連する問題