Я новичок в PHP. У меня есть файл PHP (form1.php) с формой HTML. Я хотел бы получить значение поля ввода (type = time), сохранить его в переменной PHP и передать его на другую страницу PHP, не нажимая кнопку отправки. Как я могу получить доступ к вводу и сделать это только с помощью PHP, могу ли я вызвать какое-то событие?
Form.php
<?php
?>
<!doctype html>
<html lang = "en">
<head>
<title>Form</title>
</head>
<body>
<form action = "file2.php" method = "post">
<input type = "time" name = "startTime">
</form>
</html>
«Могу ли я вызвать какое-то событие» ... не с помощью «просто PHP» нет, потому что любое событие, которое может вам понадобиться, должно произойти в браузере, а PHP не запускается в браузере, он работает только на сервере. Чтобы отправить данные на сервер из браузера, вам необходимо создать и отправить HTTP-запрос на сервер, который содержит указанные данные. Для этого вы можете а) отправить HTML-форму или б) использовать некоторый JavaScript для создания запроса AJAX (конкретный тип HTTP-запроса, генерируемый только сценарием на основе браузера). Если вы не хотите нажимать кнопку для отправки, остается б), возможно, с автоматическим таймером.
Однако нежелание нажимать кнопку на самом деле не имеет большого смысла - поле ввода должно принимать ввод пользователя. Обычно вам нужно подождать, пока пользователь что-то введет, прежде чем имеет смысл отправлять данные на сервер. Обычный способ для пользователя указать, что он закончил ввод данных и готов отправить данные, - это нажать кнопку «Отправить». Вы также можете использовать JavaScript для обработки, когда пользователь вводит что-то (но это может привести к одной отправке на каждое нажатие клавиши) или когда фокус перемещается из поля (но есть шанс, что этого никогда не произойдет) ....
... и используйте эти события в качестве триггера для вашего запроса AJAX. Но, как я уже отмечал, у них обоих есть потенциальные недостатки. Какова ваша настоящая основная причина, по которой вы не хотите использовать кнопку? Чего именно вы пытаетесь достичь? Это тот случай, когда у пользователя есть ограничение по времени для завершения ввода или что-то в этом роде?






вам нужно будет использовать javascript, иначе, если вы хотите использовать только php, вам понадобится контроллер, который проверяет, сколько времени, когда он получил петицию, и вам нужно будет нажать кнопку, помните, что php - это сторона сервера, и javascript - это клиентская сторона. Вы не можете передавать данные на стороне клиента через php
Если вы хотите получить доступ к значению переменной без отправки формы, вам, скорее всего, потребуется javascript. Добавьте обработчик события изменять к вводу времени на вашей странице. Обработчик событий изменения может связываться с другой вашей php-страницей (используя принести или xhr или любое количество производных).
Все это очень сложно, если вы только начинаете, поэтому я действительно рекомендую просто дождаться нажатия кнопки отправки и обработать ввод в этот момент.
Вы не можете этого сделать, используя только PHP. Требуемое значение - это клиентская сторона, поэтому вам понадобится Javascript, либо с помощью таймера для автоматической отправки формы, либо путем вызова обращения AJAX.