【发布时间】:2018-08-21 16:40:44
【问题描述】:
我有一个简单的表单,允许将文件上传到服务器。在一个 php 文件中,文件被接收,它被移动到服务器上的一个文件夹中,并尝试打开它以在屏幕上显示其内容。 在本地服务器中一切正常,但将其上传到付费服务器时没有任何效果。该文件似乎没有收到,我不明白发生了什么。这些文件已经在两个不同的服务器上进行了测试,并且是相同的。我检查了代码,但我看不出它有什么问题,如果它对我有用,就放在本地。
这是我的表单(index.html 文件):
<!DOCTYPE html>
<html>
<head>
<title>TESTING FILES</title>
</head>
<body>
<form method="POST" action="ProcessData.php" enctype="multipart/form-data">
<input type="file" name="files1" id="files1" required>
<br>
<br>
<input type="radio" name="gender" value="Man" required> Man
<input type="radio" name="gender" value="Woman" required> Woman
<input type="submit" name="Send" value="Send">
</form>
</body>
</html>
这是我的 php 文件,用于接收和处理表单发送的数据:
$ar = $_FILES['files1']['name'];
$type = $_FILES['files1']['type'];
$size = $_FILES['files1']['size'];
$route = $_FILES['files1']['tmp_name'];
$gender = $_POST['gender'];
$dir = "files/". $ar;
move_uploaded_file($route, $dir);
$arch = fopen($ar, "r");
echo $arch;
$arch2 = file($ar);
echo "<br><br>";
print_r($arch2);
echo "<br><br>";
echo $ar;
echo "<br>";
echo $type;
echo "<br>";
echo $size;
echo "<br>";
echo $route;
结果,只显示文件数据,不显示文件内容。
[21-Aug-2018 04:56:52 Europe/Madrid] PHP Warning: file(HotelList.txt): failed to open stream: No such file or directory in /home/evucnwhr/public_html/ProcessData.php on line 12
当我尝试上传 csv 文件时出现同样的错误
他事先审查了许可证,他们很好。问题是它似乎没有打开和读取 txt 或 csv 文件的内容。我想从 .txt 和 .csv 文件中提取数据来处理它们,但是没有实现。
发生这种错误的原因是什么?为什么不显示文件内容?
这是表单的链接,您可以尝试一下,看看会发生什么:http://lqxqjmvh.lucusvirtual.es/index2.html
【问题讨论】: