Я хочу захватить значение поля с помощью $ _POST, манипулировать им, а затем передать значение обратно на ту же страницу в том же поле, прежде чем код PHP будет манипулировать им.
Если я положу PHP-код после поля, он будет манипулировать кодом, перезагружает страницу, но не возвращает управляемый код обратно в поле.
if (!isset($input)) {
$input = '';
}
echo '<form id="testform" method="post" action="">';
echo '<input type="text" name="inputText" value="' . $input . '">';
echo '<button type="submit" name="button"> Button </button>';
echo '</form>';
$input = $_POST['inputText'];
if(isset($_POST['inputText'])) {
$input = $input . ' manipulated';
}
echo $input; //test
Если я поставил PHP-код перед полем, он не сможет найти поле для манипулирования значением...
if (!isset($input)) {
$input = '';
}
$input = $_POST['inputText'];
if(isset($_POST['inputText'])) {
$input = $input . ' manipulated';
}
echo $input; //test
echo '<form id="testform" method="post" action="">';
echo '<input type="text" name="inputText" value="' . $input . '">';
echo '<button type="submit" name="button"> Button </button>';
echo '</form>';
Очевидно, что первый подход более правилен, но как передать переменную $input
в поле до того, как остальная часть моего кода манипуляции с PHP выполняется?
Я пробовал $_POST['inputText'] = $input
как отчаянную попытку, но ничего..
Ну, из того, что я понял в вашем объяснении, вы хотите изменить входное значение на что-то еще и показать его в том же поле. Если это правильно, вы можете сделать это:
<form id="testform" method="post" action="">
<input type="text" name="inputText" value="<?php echo ( isset($_POST['inputText']) ) ? sprintf( '%s manipulated', $_POST['inputText'] ) : ''; ?>">
<button type="submit"> Send </button>
</form>
Дайте мне знать, если вы этого хотели. С уважением !
Пытаться
$input = isset($_POST['inputText'])?$_POST['inputText'] :'';
в начале, а не в
if (!isset($input)) {
$input = '';
}