我有一个按钮,我希望当我按下它时,它会在文本文件中写入其状态,按钮会改变其值,就像切换开关一样。
<button type="button"><?php echo $button ?></button>
我的问题是,一旦我按下它,文本文件中的第一个值就不会被下一个值覆盖。他们都是写的。
我应该在文本文件中添加此内容:ON
或OFF
但我得到ONOFF
或OFFON
。
<?php
$file = fopen('state.txt', 'r+');
$state = fread($file, '3');
if ($state == 'ON') {
$button = 'OFF';
fwrite($file, 'OFF');
} elseif ($state == 'OFF') {
$button = 'ON';
fwrite($file, 'ON');
} else {
$button = 'error';
}
fclose($file);
?>
此外,我希望我的php和我的HTML代码在同一页面上。
谢谢。
答案 0 :(得分:2)
您已打开r / w文件,然后从中读取。
&#34;指针&#34;是最后一个字符;下一次写操作发生在指针所在的地方,你会得到附加的数据。
2个选项: 阅读后关闭文件并重新打开以写入
或使用fseek($file,0)
将指针移回开头。