我想允许用户使用简单的HTML表单上传多个文本文件,然后将它们保存为字符串。之后,我想将它们显示给用户。例如,假设我有三个文本文件,其中包含以下内容:
file1.txt:这是一些文字。
file2.txt:这是更多文字。
file3.txt:更多文字!
当用户使用HTML表单上传它们时,我想将它们保存为字符串并显示如下:
这是一些文字。
这是更多的文字。
更多文字!
我有以下(不完整)代码,试图只获取一个文件:
Upload text documents: <br /><br>
<form action="output.php" method="post" enctype="multipart/form-data">
<input type="file" name="file" size="50" />
<br />
<input type="submit" value="Upload File" />
</form>
<?php
$doc = $_POST['file'];
echo $doc;
?>
如何循环浏览文件并将其保存为字符串,然后以最佳方式显示它们?
答案 0 :(得分:2)
完成White Marcus的回答
在输入文件元素中使用multiple =&#34; multiple&#34;属性。
你应该有:$ _FILES变量,而不是$ _POST
<?php
var_dump($_FILES);
?>
打印文件
祝你好运
答案 1 :(得分:2)
$filenames = array();
if(isset($_FILES["documents"]))
{
for($i=0; $_FILES['documents']['name'][$i] != '' ; $i++)
{
$filenames[$i] = $_FILES['documents']['name'][$i];
$myfile = fopen("$_FILES['documents']['name'][$i]", "r") or die("Unable to open file!");
echo fread($myfile,filesize("$_FILES['documents']['name'][$i]"));
fclose($myfile);
}
}
我认为这对你有帮助!!!!!!! 1
答案 2 :(得分:1)
$filenames = array();
if(isset($_FILES["documents"]))
{
for($i=0; $_FILES['documents']['name'][$i] != '' ; $i++)
{
$filenames[$i] = $_FILES['documents']['name'][$i];
}
print_r($filename);
}
答案 3 :(得分:0)
使用输入文件元素中的multiple="multiple"
属性。