Перезапись переменной при отправке формы

я пытаюсь перезаписать переменную, хранящуюся в текстовом файле, используя форму, вот код формы:

 <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);
?>

я знаю, что в моем коде много неправильных вещей, но было бы удивительно, если бы кто-то сказал мне, что не так с кодом формы; Спасибо за ваше время .

-2

Решение

Ваши имена переменных очень запутаны. Вы ставите ценность $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);
?>

Но ты действительно необходимо проверить данные перед их использованием; в противном случае пользователь может сохранить все виды плохих вещей в вашем текстовом файле.

Редактировать: Основываясь на комментариях, вы хотите прочитать из файла, а затем увеличить значение переменной, когда пользователь отправляет форму. Несколько мыслей:

  1. У вас нет кода для чтения из файла. Получите эту часть работы в первую очередь.
  2. Это странно. Это позволяет пользователю вводить что угодно, а не просто число. Это почти наверняка не то, что вы хотите сделать.
  3. Вам нужно спланировать то, что вы хотите, и реализовать это поэтапно. Ваш текущий код не очень похож на то, что вы хотите. Это отчасти потому, что вы не продумали, откуда поступают ваши данные. Вам может пригодиться учебник по обработке форм с использованием PHP.
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]