Есть некоторый код php, который выделяет из html формы данные:
<form action="main.php" method="get">
<input placeholder="логин" name="login" type="text"/>
<input type="submit" value="Зарегестрироваться"/>
</form>
Есть код php (файл - main.php), который собирает данные:
$login = null; //намеренно ставим в null, чтобы код понимал, что логин еще не дали
if (isset($_POST["login"])){
$login = $_POST["login"]; //получаем логин
}
Ситуация такая: форма заполняется, и php получает $login, и он больше не равен null. В коде есть условие которое мешает ставить $login в null, если он принял текстовое значение - получили данные формы и логин больше никогда не будет равен null. А вот проблема начинается когда в этом же php коде получаем данные из следующей формы. $login снова становится null. Как будто main.php был запущен заново. Как избежать "обнуление" переменных, если мы хотим обрабатывать несколько форм (последовательно, каждый раз вызывая их через include __DIR__."") и данные из них засовывать в main.php и их не терять.
У меня было несколько идей:
- использовать другой метод запроса (пробовал через $_GET - та же проблема), но моих знаний не хватает, чтобы выбрать нужный
- получать данные через другой скрипт (подключенный через require __DIR__.""), но опять же, моих знаний не хватает, чтобы не сделать бесконечно загружающуюся страницу (я пробовал через while ($login == null){} - бесконечная загрузка)
Помогите, пожалуйста, со скриптом. Мне нельзя терять из него значения переменных.
P.S.: данные в $_COOKIE и $_SESSION почему-то не сохраняются, как и это исправить?