Передача переменной js в php. Как передать переменную из Javascript в PHP
8 ответов
HTML/HTTP является апатридом, другими словами, то, что вы делали/видели на предыдущей странице, полностью не связано с текущей страницей. За исключением случаев, когда вы используете что-то вроде сеансов, файлов cookie или GET/POST. Сессии и файлы cookie довольно просты в использовании, причем сеанс гораздо безопаснее, чем файлы cookie. Более безопасный, но не полностью безопасный.
сессия:
//On page 1 $_SESSION["varname"] = $var_value; //On page 2 $var_value = $_SESSION["varname"];
Не забудьте запустить session_start(); на обеих этих страницах, прежде чем пытаться получить доступ к массиву $_SESSION , а также до того, как какой-либо вывод будет отправлен в браузер.
//One page 1 $_COOKIE["varname"] = $var_value; //On page 2 $var_value = $_COOKIE["varname"];
Большая разница между сеансами и куки файлами заключается в том, что значение переменной будет храниться на сервере, если вы используете сеансы и на клиенте, если вы используете файлы cookie. Я не могу придумать какую-либо серьезную причину использовать файлы cookie вместо сеансов, за исключением случаев, когда вы хотите, чтобы данные сохранялись между сеансами, но даже тогда, возможно, лучше сохранить их в БД и получить их на основе имени пользователя или идентификатора.
GET и POST
">Page2
Это создаст переменную GET.
Другой способ заключается в том, чтобы включить скрытое поле в форму, представленную на второй странице:
И затем на второй странице:
//Using GET $var_value = $_GET["varname"]; //Using POST $var_value = $_POST["varname"]; //Using GET, POST or COOKIE. $var_value = $_REQUEST["varname"];
Просто измените метод post формы, если вы хотите сделать это через сообщение. Оба одинаково небезопасны, хотя GET легче взломать.
Тот факт, что каждый новый запрос, за исключением данных сеанса, совершенно новый экземпляр скрипта поймал меня, когда я впервые начал кодирование в PHP. Как только вы привыкнете к этому, это довольно просто.
Спасибо за ответы выше. Здесь, как я это сделал, я надеюсь, что это поможет тем, кто следует. Я хочу передать регистрационный номер с одной страницы на другую, поэтому regName и regValue:
Создайте свою первую страницу, назовите ее set_reg.php :
Создайте свою вторую страницу, назовите ее get_reg.php :
Back to set_reg.php
Хотя это не так полно, как ответ выше, для моих целей это просто иллюстрирует связь между различными элементами.
Вы можете вставить его как скрытое поле в свою форму или добавить его URL-адрес действия своих форм
Echo "";
Echo "
- action – указываем файл, в который будут передаваться переменные.
- method – метод передачи переменных. В нашем случае это метод POST.
- name – название формы. Одновременно в файл будет передана переменная с таким именем.
Текстовые поля:
- name – имена переменных. В нашем случае это имя и фамилия (переменные name и lastname).
- type – тип поля. В нашем случае это текстовое поле.
- name – имя кнопки и переменной, которая будет передана вместе с другими переменными.
- type – тип кнопки. В нашем случае это кнопка для отправки данных.
- value – текст на кнопке.
Код второго файла, который будет служить приемником переменных. Назовем его post-2.php
$name = $_POST; $lastname = $_POST; echo "Значения переменных, переданных методом POST - $name и $lastname";
Как и с методом GET, мы первым делом присваиваем переменным значения соответствующих элементов глобального массива POST . Далее для наглядности выводим эти переменные на экран при помощи .
Теперь при загрузке первого файла у нас загрузится форма. После введения данных жмем по кнопке «Отправить», в результате чего в новой вкладке у нас откроется страница со вторым файлом, на которой выведутся значения, прописанные в форме на предыдущей странице. То есть второму файлу будут переданы значения переменных с первого файла.
На этом данная статья про передачу переменных в PHP подошла к концу. Если вы не хотите пропустить появления других статей на блоге, рекомендую подписаться на новостную рассылку любым удобным способом в пункте «Подписка» либо воспользоваться формой ниже.
На этом все. Удачи вам и успеха в освоении основ PHP.