在提交之前使用fwrite()并在文本框中显示文本,但每次我提交文本时,保存后会保存一个数字吗?

时间:2013-04-29 22:27:29

标签: php submit fopen fwrite

我使用fwrite()写入.txt文件。

我有一个主页,显示.txt文件中的文本。似乎工作正常。

然后我有一个'admin'页面,在提交时,将fwrite()我的textarea的内容写入文件...默认情况下在页面加载时,textarea将显示.txt文件的当前内容但是每个时间我点击提交文本添加确定,但在它之后有一个数字值,它似乎是计算字符,好像从0开始。

例如:

我输入'Hello'并提交/ homepage显示'Hello'/ Textarea显示'Hello5'

...如果我再次点击提交按钮

主页显示'Hello5'/ Textarea显示'Hello56'

依旧......

我似乎无法解决原因。

这是我到目前为止所拥有的......

<?php
if(isset($_POST['submit1'])) {
$welcomeText=fopen("writetofile.txt", "w+");
$file_contents=$_POST['welcomeText'];
fwrite($welcomeText, $file_contents);
fclose($welcomeText);
}

?>


<form name="welcomeTextEditor" method="post" action="_admin.php">
    <textarea name="welcomeText" rows="4" cols="40"><?php echo(readfile("writetofile.txt")); ?></textarea>
    <br />
    <input type="submit" name="submit1" value="Save Changes" />
</form>

1 个答案:

答案 0 :(得分:2)

readfile返回从文件读取的字节数并写入输出缓冲区,因此您不需要包含echo调用。

<?php readfile("writetofile.txt"); ?>