fopen再也打不开文件了?

yueyang 2017-05-19 03:44:32
刚写好代码的时候能打开同一个文件,在编辑了这个文件后发现打开的始终是未修改前的内容。然后尝试打开其他文件,结果都提示无法打开。将浏览器全部完全关掉,清空浏览器的缓存,然后再试结果就所有文件都打不开了。

<?php
if (isset($_POST['file'])) {
$file = fopen($path, "r") or exit("无法打开文件!");
// 读取文件每一行,直到文件结尾
$i=1;
while(!feof($file))
{
if($i%2!=0){
echo fgets($file). $i."<br>";
}else{
echo fgets($file). "<br>";
}
$i++;
}
fclose($file);
}
echo $_POST['file'];
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>test</title>
</head>
<body>
<form id="myForm" name="myForm" method="POST" action="txt.php" />
<input type="file" name="file" id="file">
<input value="确定" type="submit" />
</form>
</body>
</html>
...全文
240 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuzuning 2017-05-19
  • 打赏
  • 举报
回复
你看看传来的路径是否正确,不就知道了吗
yueyang 2017-05-19
  • 打赏
  • 举报
回复
引用 9 楼 xuzuning 的回复:
怎么,你想打开用户文件? 思路就错了!
问题是第一个文件就成功了,后面不成功。估计把PHP的临时文件目录清空就又可以了。
xuzuning 2017-05-19
  • 打赏
  • 举报
回复
怎么,你想打开用户文件? 思路就错了!
yueyang 2017-05-19
  • 打赏
  • 举报
回复
引用 7 楼 xuzuning 的回复:
只能打开最早打开过的那个txt文件,别的一律打不开,而且显示的还是没修改前的txt内容
是的,我在考虑是否上传上去再打开了,用完再删除服务器上的文件。
xuzuning 2017-05-19
  • 打赏
  • 举报
回复
只能打开最早打开过的那个txt文件,别的一律打不开,而且显示的还是没修改前的txt内容
yueyang 2017-05-19
  • 打赏
  • 举报
回复
引用 5 楼 xuzuning 的回复:
你只打印了文件内容,并没有将“修改”保存回文件
我是只读打开的啊,只是读取,打算写数据库里的。
xuzuning 2017-05-19
  • 打赏
  • 举报
回复
你只打印了文件内容,并没有将“修改”保存回文件
yueyang 2017-05-19
  • 打赏
  • 举报
回复
引用 3 楼 u014567183 的回复:
你27行 tpye 为什么要用 file? 你是要上传文件?
不上传,是选择一个本地文件。
u014567183 2017-05-19
  • 打赏
  • 举报
回复
你27行 tpye 为什么要用 file? 你是要上传文件?
yueyang 2017-05-19
  • 打赏
  • 举报
回复
引用 1 楼 u014567183 的回复:
$path 未定义.fopen不知道要打开哪个文件。

<?php
if (isset($_POST['file'])) {
	$path=$_POST['file'];
	$file = fopen($path, "r") or exit("无法打开文件!");
	// 读取文件每一行,直到文件结尾
	$i=1;
	while(!feof($file))
	{
	    if($i%2!=0){
			echo fgets($file). $i."<br>";
	    }else{
	    	echo fgets($file). "<br>";
	    }
	    $i++;
	}
		fclose($file);
}
	echo $_POST['file'];
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>test</title>
</head>
<body>
<form id="myForm" name="myForm" method="POST" action="txt.php" />
<input type="file" name="file" id="file">
<input value="确定" type="submit" />
</form>
</body>
</html>
只能打开最早打开过的那个txt文件,别的一律打不开,而且显示的还是没修改前的txt内容。
u014567183 2017-05-19
  • 打赏
  • 举报
回复
$path 未定义.fopen不知道要打开哪个文件。

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧