number.txt :
1
的index.php :
<?php
$handle = file_get_contents("number.txt");
?>
<form action="" method="post">
<button class="click"></button>
</form>
如何制作,以便当用户点击按钮时,文件 number.txt 会被编辑,以便从1更改为2?然后到3,4,5等等?
点击按钮会将数字增加一个
我们说我点击了按钮,如果我打开 number.txt ,我现在会看到:
2
重申一下,有一个名为 number.txt 的文件,该文件的内容为&#34; 1&#34; (没有引号)。现在,在 index.php 页面上,有一个表单,其中包含按钮。单击按钮后,将重写 numbers.txt 文件,使其值增加1(每次单击按钮时) - 在这种情况下,文件 number.txt 现在将包含内容&#34; 2&#34; (没有引号)。
我不太确定如何做到这一点,所以感谢任何帮助。
答案 0 :(得分:0)
查看表单提交和处理文件(通过fopen/fwrite/fclose
或file_get_contents/file_put_contents
)。这是您在上面描述的功能:
<h2>Click</h2>
<form action="" method="post">
<button name="click" class="click">Click me!</button>
</form>
<?php
if(isset($_POST['click']))
{
$filename = "number.txt";
$before_editing = file_get_contents($filename);
echo "Content of the file " . $filename . " before editing: " . $before_editing . "<br>";
file_put_contents($filename, "2");
$after_editing = file_get_contents($filename);
echo "Content of the file " . $filename . " after editing: " . $after_editing . "<br>";
}
?>
请注意,运行此脚本后,文件number.txt
的内容将被重写为“2”。你必须手动再次编辑才能看到一些变化。
根据问题的变化,这是每次点击按钮时都会增加数值的代码:
<h2>Click</h2>
<form action="" method="post">
<button name="click" class="click">Click me!</button>
</form>
<?php
if(isset($_POST['click']))
{
$filename = "number.txt";
$content = file_get_contents($filename);
preg_match("#\d+#", $content, $before_editing);
$number_before = $before_editing[0];
echo "The number in " . $filename . " before clicking: " . $number_before . "<br>";
file_put_contents($filename, ++$number_before);
$content = file_get_contents($filename);
preg_match("#\d+#", $content, $after_editing);
$number_after = $after_editing[0];
echo "The number in " . $filename . " after clicking: " . $number_after . "<br>";
}
?>