|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
© Cваял этот сайтик для вас и себя bes13.
-=2009-2013=- |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ⇐ туда | на память | сюда ⇒ |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() |
![]() |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Метод передачи данных формы
нужно знать обязательно. [2009-10-12] Методы передачи данных с одной страницы на другуюМетод передачи данных формы(методы GET или POST, есть ещё , но сейчас) У нас есть файл-передатчик(transmitter) 1.php <form method="[GET или POST]" action="2.php"> <p>Текстовое поле<br> <input type="text" size="40" name="pole1"> </p> <p> Поле для ввода пароля<br> <input type="password" size="40" name="pole2"></p> <p>Чекбокс(галка)<br> <input type="checkbox" name="pole3" value="[значение]"> </p> <p>Радиокнопки<br> <input type="radio" name="pole4" value="[значение 1]"> - вариант1 <br> <input type="radio" name="pole4" value="[значение 2]"> - вариант2 </p> </form> И есть файл-приемник(receiver) 2.php <?php //выдаст значение введённое в текстовое поле echo $_GET['pole1']; //выдаст значение введённое в поле для ввода пароля echo $_GET['pole2']; //Если галка стоит вернёт: [значение], иначе: пустое значение "" echo $_GET['pole3']; //Вернёт значение выбранного пункта радиокнопки ([значение 1] или [значение 2]) echo $_GET['pole4']; /*С POST тоже самое*/ ?> Принципиальное отличие GET и POST:Методы: URL(адрес): http://имя_сайта/2.php?pole1=&pole2=[значение]&pole3=[значение]&pole4=[значение] Какие-то значения могут быть пустыми (pole1=), это значит, что им не присвоили никакого значения. POST предаётся другой странице по средством прикрепления данных к заголовком отправки запроса HTTP. Метод передачи данных через URL(адресную строку)Вот к примеру у нас есть обычная ссылка на странице <a href="./file.php">Ссылка</a> Нажав на которую пользователь попадёт на страницу с именем file.php. <a href="file.php?[имя_переменной1]=[значение1]&[имя_переменной2]=[значение2]"></a> Тогда при переходе по данной ссылке мы можем использовать данные переменные <?php echo $_GET['имя_переменной1']; //Выведет [значение1] echo $_GET['имя_переменной2']; //Выведет [значение2] ?>или присвоить эти данные переменным и использовать их для управления страницей <?php $per1 = $_GET['имя_переменной1']; //$per1; $per2 = $_GET['имя_переменной2']; //$per2; ?> Метод передачи данных через CookiesДля этого нам понадобится знание хранения данных в браузере. В данном случае все данные будут храниться в папке вашего компьютера определяемой браузером. Такие данные существуют только определённое количество времени. Через которые они просто чистятся, также их можно удалить и через сами браузеры setcookie ( [имя_cookie], [значение], [время_существования_в_секундах] ); Пример: задаем cookie(печенье в простонародии) с именем name, со значением "gold" на 20 секунд; setcookie("name", "gold", 20); Теперь на любой страницы данного сайта в течении 20 секунд, после определения cookie, эта переменная будет вам доступна. <?php echo $_COOKIE['name']; //Выведет Vasya ?> Метод передачи данных через Сессии(Sessions)Эти переменные хранятсмя на сервере в временной папке и доступ к ним имеет исключительно только сервер. Сессии существуют до закрытия пользователем браузера. Но в отличии данных уникальный идентификатор сессии хранится либо в COOKIES о которых мы говорили выше, либо передаётся через переменную GET способом, о котором мы уже также сказали. (почитайте про сессии(sessions) ) Для начала нужно зарегистрировать сессии на странице, это делается помощью функции session_start() file1.php <?php session_start(); // Объявили о том что мы будем использровать сессию /* заносим значения в сессию */ // С помощью глобального массива $_SESSION["param1"] = [Значение_1]; // С помощью глобального массива $_SESSION["param2"] = [Значение_2]; ?> Пока вы не закроете браузер вы можете использовать данные переменные на всём сайте, на котором они были зарегистрированны <?php // Объявили о том что мы будем использровать сессию session_start(); //Выведет [Значение_1] echo $_SESSION["param1"]; //Выведет [Значение_2] echo $_SESSION["param2"]; ?> Помимо этих способов существуют ещё, самые важные я вам перечислил. И конечно же... Все перечисленные типы можно совмещать на одной странице, например... Передача данных формы+данные через URL <form method="[GET или POST]" action="2.php?id=1"> <input type="text" name="pole1"> Текстовое поле <br> </form> 13
всего коментов:4
Zeu$$
Спасибо, как раз то, что я искал. Методы передачи переменыых между страницами. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||