- •Интерактивное программирование
- •Разработка веб-приложений с использованием php и MySql
- •Тема 1. Архитектура веб-приложений
- •Установка веб-сервера
- •Подготовительный этап
- •Создание файловой структуры веб-сервера
- •Установка Apache 2.4
- •Настройка php 7
- •Установка и настройка MySql 5.7
- •Установка и настройка php 7
- •Установка и настройка phpMyAdmin
- •Использование сервера и резервное копирование данных
- •Дополнительная настройка php
- •Установка почтовой заглушки
- •Тема 2. Использование php в веб-разработке Как работает php
- •Основы php Первая страница
- •Синтаксис языка
- •Переменные в php
- •Область видимости переменных
- •Типы данных
- •Тип данных boolean
- •Типы данных integer и float
- •Тип данных string
- •Тип данных null
- •Тип данных resource
- •Тип данных array
- •Константы
- •Автоматическое преобразование типов
- •Приведение типов
- •Преобразование в булев тип
- •Операторы
- •Арифметические операторы
- •Оператор присваивания
- •Операторы сравнения
- •Операторы инкремента и декремента
- •Логические операторы
- •Строковые операторы
- •Операторы, работающие с массивами
- •Приоритет оператора
- •Управляющие конструкции
- •Условный оператор if
- •Функции
- •Функции для проверки на существование переменных
- •Для работы с массивами
- •Сортировка массивов
- •Математические функции
- •Функции обработки строк
- •Функции для работы с датой и временем
- •Функции, определяемые пользователем
- •Тема 3. Взаимодействие с html Подключение файлов
- •Обработка форм
- •Тема 4. Работа с MySql Что такое MySql? Принципы проектирования бд
- •Основы языка sql и работа в phpMyAdmin
- •Типы данных
- •Создание базы данных
- •Удаление базы данных
- •Создание таблиц
- •Ограничения внешнего ключа
- •Изменение столбцов в таблице
- •Удаление таблиц
- •Добавление записей в таблицы
- •Удаление записей из таблиц
- •Обновление содержимого некоторых полей в одной либо нескольких записях в таблицах бд
- •Поиск одной или нескольких записей, удовлетворяющих заданному условию
- •Взаимодействие php и MySql
- •Подключение к MySql
- •Получение данных из бд
- •Запись данных в бд
- •Теоретические вопросы
- •Задания.
Установка почтовой заглушки
В каталоге C:\Server\bin\ создайте новый каталог с названием Sendmail. Теперь в этом каталоге создайте файл sendmail.php со следующим содержимым:
#!/usr/bin/env php
<?php
/* PHP.INI
* [mail function]
* ;SMTP = localhost
* ;smtp_port = 25
* ;sendmail_from = me@example.com
* sendmail_path = php.exe sendmail.php --dir C:\mail --open
*/
$is_windows = stristr(PHP_OS, 'WIN');
$options = getopt("", ['open', 'prepend', 'file:', 'dir:']);
$is_open = isset($options['open']);
$is_prepend = isset($options['prepend']);
$is_onefile = isset($options['file']);
$mail_dir = isset($options['dir']) ? $options['dir'] : sys_get_temp_dir() . '/mail';
$file_name = isset($options['file']) ? $options['file'] : mkname();
$file_path = $mail_dir . '/' . $file_name;
if (!is_dir($mail_dir)) {
mkdir($mail_dir, 0777, TRUE);
if (!is_dir($mail_dir)) {
die('Mail folder [' . $mail_dir . '] not created');
}
}
$stream = $is_onefile ? PHP_EOL . str_repeat("-=", 10) . date('Y-m-d H:i:s') . str_repeat("-=", 10) . PHP_EOL : '';
while (false !== ($line = fgets(STDIN))) {
//$stream .= ($is_windows ? str_replace("\n", PHP_EOL, $line) : $line);
$stream .= $line;
}
if ($is_prepend && file_exists($file_path)) {
$file_contents = file_get_contents($file_path);
$stream .= $file_contents;
}
file_put_contents($file_path, $stream, $is_prepend ? 0 : FILE_APPEND);
if ($is_open && $is_windows) {
pclose(popen("start /B notepad " . $file_path, "r"));
}
function mkname($i = 0) {
global $mail_dir;
$fn = 'mail_' . date('Y-m-d_H-i-s_') . $i . '.eml';
return file_exists($mail_dir . '/' . $fn) ? mkname( ++$i) : $fn;
}
Откройте конфигурационный файл PHP, размещённый в каталоге C:\Server\bin\PHP\php.ini, и добавьте туда одну строчку (см. рисунок 124):
sendmail_path
= "C:\Server\bin\PHP\php.exe C:\Server\bin\Sendmail\sendmail.php
--dir C:\Server\bin\Sendmail\emails"
Рисунок 124 – настройка почтовой заглушки в php.ini
Сохраните этот файл и перезапустите сервер. Теперь все отправленные письма будут сохраняться в каталоге C:\Server\bin\Sendmail\emails\.
Письма будут иметь расширение .eml и их можно будет открывать в программе Outlook или в обычном текстовом редакторе.
Тема 2. Использование php в веб-разработке Как работает php
PHP является скриптовым языком программирования общего назначения, интенсивно применяемым для разработки веб-приложений. В настоящее время поддерживается подавляющим большинством хостинг-провайдеров и является одним из лидеров среди языков программирования, применяющихся для создания динамических веб-сайтов.
PHP - язык создания сценариев, который давно перерос свое название. Дело в том, что PHP - это аббревиатура от слов Personal Home Page (персональная домашняя страница). Созданная Расмусом Лердорфом в 1994 году, первая версия PHP представляла собой набор функций для мониторинга посетителей веб-страницы.
Постепенно, в процессе усовершенствования, PHP из набора функций стал полноценным языком программирования. Его аббревиатура теперь расшифровывается как PHP HyperText Preprocessor - препроцессор гипертекста PHP.
PHP является встраиваемым языком программирования. Конструкции PHP, вставленные в HTML-код, выполняются сервером при каждом посещении страницы. Результат их обработки вместе с обычным HTML-кодом передается браузеру.
Невозможно создать динамический сайт, используя только HTML-разметку. Дело в том, что HTML-код выполняется на стороне клиента, а именно в браузере. И не имеет доступа к серверной части. С помощью HTML мы не можем получить информацию, находящуюся где-либо, кроме текущего HTML-файла. И не можем сохранять информацию, полученную от пользователя. Процесс выполнения HTML-файла представлен на рисунке 125.
Рисунок 125 - Процесс выполнения HTML-файла
Пользователь посылает запрос на сервер, серверные программы находят там нужный файл и отправляют его пользователю в том виде, в каком он есть. На стороне клиента полученный код обрабатывается браузером, и на выходе получается визуальное отображение веб-страницы в окне браузера.
PHP-скрипт, напротив, выполняется на стороне сервера. Когда пользователь посылает запрос на получение веб-страницы, содержащий PHP-код, сервер находит ее и отправляет сначала на обработку интерпретатору PHP. После того, как весь PHP-код будет исполнен, данные отправляются клиенту.
С точки зрения пользователя, это будет обычная HTML-страница, не содержащая никакого постороннего кода, так как он уже был выполнен до этого. Затем браузер обработает полученные данные и отобразит веб-страницу в соответствии с ними. Процесс выполнения PHP-файла представлен на рисунке 126.
Рисунок 126 - Процесс выполнения PHP-файла
Так как PHP-скрипт выполняется на стороне сервера, он может получить доступ к информации, хранящейся на нем. Таким образом, используя PHP, мы можем создавать динамические веб-страницы, способные загружать данные с сервера и сохранять информацию, полученную от пользователя.
