Пиши Дома Нужные Работы

Обратная связь

Пример: Форма контактной информации

Основываясь на имеющихся знаниях о PHP и формах, вы можете создать форму контактной информации с использованием функции mail, которая имеет следующий синтаксис:

mail(куда, субъект, сообщение);

 

 

Сначала создаём простую HTML-форму:

<html> <head> <title>Форма контактной информации</title> </head> <body> <h1>Форма контактной информации</h1> <form method="post" action="handler.php"> <p>Субъект:<br /><input type="text" name="subject" /></p> <p>Сообщение:<br /><textarea name="message"></textarea></p> <input type="submit"> </form> </body> </html>

Затем понадобится РНР-скрипт для отправки пользовательского ввода:

<html> <head> <title>Функции</title> </head> <body> <?php // Получатель (измените на ваш e-mail адрес) $strEmail = "name@mydomain.com"; // Получить пользовательские вводы $strSubject = $_POST["subject"]; $strMessage = $_POST["message"]; mail($strEmail,$strSubject,$strMessage); echo "Mail Sent."; ?> </body> </html>

Заметьте, что пример работает, только если у вас есть доступ к почтовому серверу. По умолчанию это не так в XAMPP и в большинстве бесплатных хостов. Итак, некоторые хосты могут требовать наличия заголовка формы, который выполняется с дополнительным параметром:

mail("вы@имявашегодомена.com", "Тест", "Это тестовое сообщение", "От: мне@мойдомен.com");

 

 

Сессии

РНР-сессии дают возможность работать с информацией о пользовательской сессии. Вы можете создавать приложения, которые идентифицируют и собирают информацию о пользователях.

Сессии могут начинаться разными способами. Мы не будем углубляться в технические тонкости, а сконцентрируемся на варианте, когда сессия начинается с сохранения значения. Сессия заканчивается/загибается (dies), если пользователь не запрашивает страниц в течение какого-то времени (стандартное значение - 20 минут). Разумеется, вы в любой момент можете закончит/убить сессию в вашем скрипте.



Пример использования сессий

Если вы запрашиваете эту страницу, я сохраняю текущее время в сессии. Я сделал это и могу теперь показать вам пример работы сессии.

Я назвал элемент "StartTime" и сохранил его, добавив следующую строку в мой РНР-скрипт:

<?php session_start(); $_SESSION["StartTime"] = date("r"); ?>

Таким образом, сессия началась. Как сказано выше, каждая сессия получает ID от сервера.

Ваша сессия имеет следующий ID: 8efmu3f3te4u6t8or6ratkfat0

В любое время я могу вызвать "StartTime" из сессии, введя:

<?php session_start(); echo $_SESSION["StartTime"]; ?>

что покажет, что страница была запрошена в (в соответствии с временем данного вэб-сервера).

Но интересно, штаа эта информация остаётся в сессии, даже после выхода со страницы. Эта информация будет сопровождать вас, пока ваша сессия не завершится.

По умолчанию сессия длится, пока пользователь не закроет окно браузера, и тогда она загибается автоматически. Но если вы хотите принудительно завершить сессию, её всегда можно замочить таким образом:

 

 

<?php session_destroy(); ?>

Посмотрим другой пример использования сессий: с паролем.

Логин в систему с сессиями

В следующем примере мы создадим простейшую систему с логином. Используем многое из того, что изучили на предыдущих занятиях.

Первое, что необходимо, это форма, в которой люди могу указывать username и password. Она может выглядеть так:

<html> <head> <title>Login</title> </head> <body> <form method="post" action="login.php"> <p>Username: <input type="text" name="username" /></p> <p>Password: <input type="text" name="password" /></p> <p><input type="submit" value="Let me in" /></p> </form> </body> </html>

Затем создадим файл login.php.

В этом файле мы проверяем, введены ли корректные username и password. Если это так, мы начинаем сессию, в которой указано, что пользователь вошёл с корректными username и password.

 

<html> <head> <title>Login</title> </head> <body> <?php // Проверить корректность username и password if ($_POST["username"] == "php" && $_POST["password"] == "php") { // Если корректны, устанавливаем значение сессии в YES session_start(); $_SESSION["Login"] = "YES"; echo "<h1>Вы зашли некорректно</h1>"; echo "<p><a href='document.php'>Ссылка на защищённый файл</a><p/>"; } else { // Если некорректны, устанавливаем сессию в NO session_start(); $_SESSION["Login"] = "NO"; echo "<h1>Вы зашли НЕкорректно </h1>"; echo "<p><a href='document.php'>Ссылка на защищённый файл</a><p/>"; } ?> </body> </html>

При работе с защищёнными файлами мы проверяем, вошёл ли пользователь с корректным логином. Если нет, the пользователь отправляется обратно к логин-форме. Вот как делается эта защита:

<?php // Начать вашу РНР-сессию session_start(); // Если пользователь не зашёл, отправить его/её к логин-форме if ($_SESSION["Login"] != "YES") { header("Location: form.php"); } ?> <html> <head> <title>Логин</title> </head> <body> <h1>Этот документ защищён</h1> <p>Вы можете получить к нему доступ, только если вошли в систему.</p> </body> </html>

 

Куки

Что такое кука?

Кука это небольшой текстовый файл, в котором сайт может хранить различную информацию. Куки сохраняются на жёстком диске пользователей, а не на сервере.

Срок годности большинства кук истекает после предопределённого периода времени (они самоудаляются), и этот период может варьироваться от одной минуты до нескольких лет. Но пользователь и сам может удалять любые куки на своём компьютере.

Большинство браузеров, таких как Microsoft Internet Explorer, Mozilla Firefox и Google Chrome, могут быть сконфигурированы так, что пользователь может решать, принимать ли куки. Но тогда почему не сказать "нет" всем кукам? Это возможно. Но многие сайты не будут работать соответствующим образом без кук, поскольку куки во многих контекстах используются для улучшения функциональности сайтов.






ТОП 5 статей:
Экономическая сущность инвестиций - Экономическая сущность инвестиций – долгосрочные вложения экономических ресурсов сроком более 1 года для получения прибыли путем...
Тема: Федеральный закон от 26.07.2006 N 135-ФЗ - На основании изучения ФЗ № 135, дайте максимально короткое определение следующих понятий с указанием статей и пунктов закона...
Сущность, функции и виды управления в телекоммуникациях - Цели достигаются с помощью различных принципов, функций и методов социально-экономического менеджмента...
Схема построения базисных индексов - Индекс (лат. INDEX – указатель, показатель) - относительная величина, показывающая, во сколько раз уровень изучаемого явления...
Тема 11. Международное космическое право - Правовой режим космического пространства и небесных тел. Принципы деятельности государств по исследованию...



©2015- 2024 pdnr.ru Все права принадлежат авторам размещенных материалов.