Php 在表单提交时覆盖变量
我试图使用表单覆盖txt文件中存储的变量,以下是表单代码:Php 在表单提交时覆盖变量,php,forms,file,variables,overwrite,Php,Forms,File,Variables,Overwrite,我试图使用表单覆盖txt文件中存储的变量,以下是表单代码: <form action="test.php" method="POST" NAME="action1"> <input type="hidden" name="name" value="<?php echo $amount +10 ?>"> <input type="button" value="increment" onclick="window.doc
<form action="test.php" method="POST" NAME="action1">
<input type="hidden" name="name" value="<?php echo $amount +10 ?>">
<input type="button" value="increment" onclick="window.document.action1.submit()">
</form>
下面是test.php文件:
<?php
$myFile = "testFile.txt";
$fh = fopen($myFile, 'w') or die("can't open file");
$amount = 0;
fwrite($fh, $amount);
fclose($fh);
?>
我知道我的代码有很多错误,但如果有人告诉我表单代码有什么错误,那将是令人惊讶的;谢谢您的时间。您的变量名非常混乱。您在名为name的字段中输入值$amount+10?在输出$amount之前,您永远不会定义它,所以这会给您带来错误。你期望那里会发生什么 我认为您试图保存的变量是$\u POST['name'],如下所示:
<?php
$myFile = "testFile.txt";
$fh = fopen($myFile, 'w') or die("can't open file");
fwrite($fh, $_POST['name']);
fclose($fh);
?>
但在使用数据之前,您确实需要验证数据;否则,用户可能会在txt文件中保存各种不好的内容
编辑:根据注释,您希望从文件中读取,然后在用户提交表单时增加变量。一些想法:
您没有从文件中读取的代码。先让那部分工作。
这很奇怪。这允许用户输入任何内容,而不仅仅是数字。这几乎肯定不是你想做的。
你需要计划好你想要什么,并分步实施。您当前的代码与您想要的代码不太相似。这部分是因为您没有考虑数据的来源和去向。您可能会发现使用PHP进行表单处理的教程很有帮助。
在这两个PHP程序中都没有定义$amount。我想做的是,当用户单击submit按钮时,txt文件中的变量$amount变为$amount+10。对不起,我的英语不好。您想在提交后添加10吗?还是在它之前?这一切都很不清楚。那么,看看我的答案。您还必须在某个时候读取文件;你的问题中没有这方面的代码。