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的文件,该文件的内容为"1"(没有引号)。现在,在index.php页面上,有一个表单,其中包含按钮。单击按钮后,numbers.txt文件将被重写,使其值增加一(每次单击按钮)-在这种情况下,文件numeric.txt现在的内容为"2"(不带引号)。
我不太确定我会怎么做,所以任何帮助都很感激。
查看表单提交和处理文件(通过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>";
}
?>