覆盖表单提交上的变量

时间:2015-01-26 13:25:44

标签: 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.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);
?>

我知道我的代码有很多错误但如果有人告诉我表单代码有什么问题会很奇怪;谢谢你的时间。

1 个答案:

答案 0 :(得分:0)

您的变量名称非常混乱。您是否在名为$amount + 10的字段中添加了值name?并且在尝试输出之前从未定义$amount,这样就会给你错误。你期待在那里发生什么?

认为您要保存的变量是$_POST['name'],如下所示:

<?php

$myFile = "testFile.txt";
$fh = fopen($myFile, 'w') or die("can't open file");
fwrite($fh, $_POST['name']);
fclose($fh);
?>

确实需要在使用之前验证数据;否则,用户可以在txt文件中保存各种不良内容。

编辑:根据评论,您要从文件中读取,然后在用户提交表单时递增变量。一些想法:

  1. 您没有从文件中读取的代码。让这部分先行。
  2. 这很奇怪。这允许用户输入任何内容,而不仅仅是数字。这几乎肯定不是你想要做的。
  3. 您需要计划出您想要的内容并按步骤实施。您当前的代码与您想要的内容没有太大的相似之处。这部分是因为您还没有想过数据的来源和去向。您可以在PHP上找到有关表单处理的教程。