Поэтому у меня есть это пустое текстовое поле на странице registrationg. Пользователь вводит некоторые данные, показ продолжается, а затем страница подтверждения. Если данные неверны, пользователь обращается назад, чтобы исправить все, что было не так. Однако, когда он возвращается, все текстовые поля пусты. Поэтому первое, что приходит мне на ум, это хранить пользовательские данные в сеансе (у меня есть класс User, который содержит все эти данные, поэтому я храню класс в сеансе). Когда пользователь возвращается, я могу получить данные.
Я делаю что-то вроде этого:
if($_SESSION['UserInfo']) { $user = $_SESSION['UserInfo']; $firstName = $user->FirstName; $lastName = $user->LastName; }
Как я могу поместить эти переменные в текстовое поле?
Чтобы установить значение, вы можете просто отбросить содержимое внутри атрибута value
:
<input type="text" name="firstname" value="<?php echo htmlentities($firstName); ?>" /> <input type="text" name="lastname" value="<?php echo htmlentities($lastName); ?>" />
Конечно, вы захотите избежать этого, но …
<input type="text" value="<?php echo $firstName ?>" />
или если форма опубликована, было бы легче сделать:
<input type="text" name="firstName" value="<?php echo $_POST['firstName'] ?>" />
отлично … хотя это и было вне сферы действия вопроса, это беглый вариант:
<input type="text" name="firstName" value="<?php echo htmlentities($_POST['firstName']) ?>" />
smth like
<input type="text" value="<?php echo $first_name;?>">
Не забудьте сбежать с htmlentities () или smth подобным. Если вы не знаете, почему – google XSS.