-
Использование по умолчанию движка InnoDB.
-
Поддержка полусинхронного (semi-synchronous) механизма репликации, основанного на патчах к InnoDB от компании Google.
-
Улучшение функций по секционированию данных. Расширенный синтаксис для разбиения больших таблиц на несколько частей, размещенных в файловых системах (partitioning). Добавлены операции RANGE, LIST и метод оптимизации «partition pruning».
-
Новый механизм оптимизации вложенных запросов и JOIN-операций.
-
Переработана система внутренних блокировок.
-
Интегрированы патчи Google с оптимизацией работы InnoDB на процессорах с большим количеством ядер.
PhpMyAdmin — это веб-приложение, созданное с целью упростить работу с базой данных MySql. Современные хостинг-провайдеры чаще всего устанавливают именно PhpMyAdmin в панели управления.
Возможности PhpMyAdmin:
-
создавать и удалять базы данных;
-
создание таблиц и редактирование их полей;
-
управление индексами;
-
поиск по базе данных;
-
выполнение SQL-запросов;
-
создание пользователей и управление их правами;
-
возможность импорта/экспорта данных;
-
и многое другое.
PhpStorm 2022.1.1.
PhpStorm – интегрированная среда разработки на PHP с интеллектуальным редактором, которая поддерживает все версии PHP (современные и классические проекты), включая генераторы, сопрограммы, пространства имен, замыкания, типажи, синтаксис коротких массивов, а также обеспечивает автодополнение кода, рефакторинги, предотвращение ошибок налету и поддерживает смешивание языков.
Поддерживаются передовые технологии веб-разработки, включая HTML5, CSS, Sass, SCSS, Less, Stylus, Compass, CoffeeScript, TypeScript, ECMAScript Harmony, шаблоны Jade, Zen Coding, Emmet и JavaScript.
Кроме того приложение включает в себя всю функциональность WebStorm (HTML/CSS редактор, JavaScript редактор) и добавляет полнофункциональную поддержку PHP и баз данных / SQL.
Ключевые возможности:
-
Интеллектуальный редактор PHP кода с подсветкой синтаксиса, автодополнением кода, расширенными настройками форматирования кода, предотвращением ошибок налету.
-
Поддерживает версии PHP начиная с 5.3, генераторы, сопрограммы и все синтаксические улучшения.
-
PHP рефакторинги, code (re)arranger, детектор дублируемого кода.
-
Поддержка Vagrant, Composer, встроенный REST клиент, Command Line Tools, SSH консоль.
-
Поддержка фреймворков (MVC view для Symfony2, Yii) и специализированные плагины для ведущих PHP фреймворков (Symfony, Magento, Drupal, Yii, CakePHP, WordPress, Joomla! и многие другие).
-
Визуальный отладчик для PHP приложений, валидация конфигурации отладчика, PHPUnit с покрытием кода (поддержка PHPUnit 5), а также интеграция с профилировщиком.
-
HTML, CSS, JavaScript редактор. Отладка и модульное тестирование для JS. Поддержка HTML5, CSS, Sass, SCSS, Less, Stylus, Compass, CoffeeScript, TypeScript, ECMAScript Harmony, Emmet и других передовых технологий веб-разработки.
-
Полный набор инструментов для фронтенд-разработки.
-
Поддержка стилей кода, встроенные стили PSR1/PSR2, Symfony2, Zend, Drupal и другие.
-
Интеграция с системами управления версиями, включая унифицированный интерфейс.
-
Удаленное развертывание приложений и автоматическая синхронизация с использованием FTP, SFTP, FTPS и др.
-
Live Edit: изменения в коде можно мгновенно просмотреть в браузере без перезагрузки страницы.
-
PHP UML.
-
Интеграция с баг-трекерами.
-
Инструменты работы с базами данных, SQL редактор.
-
Кросс-платформенность (Windows, Mac OS X, Linux).
Для создания клиентской части использованы следующие языки программирования:
HTML5.
Для разработчиков html5 помогает писать понятный семантический код. Позволяет управлять многими процессами на странице своими стандартными методами, без использования javascript или сторонних плагинов и сервисов. Это означает, что решаются некоторые проблемы кроссбраузерности, поскольку браузеры одинаково реализуют новые возможности.
Также html5 делает удобной работу в сети и для обычных пользователей. Например, увеличивается скорость работы, использование браузера становится более удобным. Для того чтобы смотреть ролики из youtube не нужно устанавливать дополнительные плагины и постоянно обновлять их.
CSS5.
CSS (Cascading Style Sheets) — язык таблиц стилей, который позволяет прикреплять стиль (например, шрифты и цвет) к структурированным документам (например, документам HTML и приложениям XML).
Обычно CSS-стили используются для создания и изменения стиля элементов веб-страниц и пользовательских интерфейсов, написанных на языках HTML и XHTML, но также могут быть применены к любому виду XML-документа, в том числе XML, SVG и XUL.
Отделяя стиль представления документов от содержимого документов, CSS упрощает создание веб-страниц и обслуживание сайтов.
CSS поддерживает таблицы стилей для конкретных носителей, поэтому авторы могут адаптировать представление своих документов к визуальным браузерам, слуховым устройствам, принтерам, брайлевским устройствам, карманным устройствам и т.д.
JSscript.
Script — это язык программирования от компании Microsoft. Он предназначен для создания сценариев и является реализацией стандарта ECMAScript. Синтаксис JScript во многом аналогичен языку JavaScript от компании Netscape. JScript по умолчанию поддерживается в Windows Script Host (WSH), который в свою очередь по умолчанию устанавливается вместе с почти любой версией Windows. Если у вас слишком старая версия Windows, вы можете скачать WSH с сайта Microsoft и самостоятельно установить его. Сценарии на языке JScript чаще всего используются в следующих областях:
-
клиентские сценарии на Web-страницах;
-
автоматизация администрирования систем Windows;
-
серверный программный код на страницах ASP в Web-приложениях.
Язык JScript получил дальнейшее развитие в виде языка JScript.NET, который ориентирован на работу в рамках платформы Microsoft ASP.NET.
Динамический веб-сайт — это тот, где часть содержимого ответа генерируется динамически только при необходимости. На динамическом веб-сайте HTML-страницы обычно создаются путём вставки данных из базы данных в заполнители в HTML-шаблонах (это гораздо более эффективный способ хранения большого количества контента, чем использование статических сайтов).
Динамический сайт может возвращать разные данные для URL-адреса на основе информации, предоставленной пользователем или сохранёнными настройками, и может выполнять другие операции, как часть возврата ответа (например, отправку уведомлений).
Большая часть кода для поддержки динамического веб-сайта должна выполняться на сервере. Создание этого кода известно, как «программирование серверной части» (или иногда «программирование бэкенда»).
Архитектура динамического сайта представлена на Рисунке 15.
Рисунок 15 –
Архитектура динамического сайта
Код серверной части может быть написан на языке PHP.Программирование серверной части позволяет хранить информацию в базе данных и динамически создавать и возвращать HTML и другие типы файлов (например, PDF, изображения, и т. д.).Программирование серверной части позволяет сайтам ограничивать доступ авторизованным пользователям и предоставлять только ту информацию, которую пользователю разрешено видеть.Программирование серверной части позволяет разработчикам использовать сессии – изначально это механизм, позволяющий серверу хранить информацию о текущем пользователе сайта и отправлять разные ответы, основанные на этой информации.
Это позволяет, например, сайту знать, что пользователь был предварительно авторизован и выводить ссылки на его адрес электронной почты или историю заказов.
Серверная часть приложения реализована в виде отдельных модулей, написанных
на языке PHP и реализующих следующие функции:
-
Подключение к серверу БД;
-
Отправка запросов к серверу БД на получение данных;
-
Отправка запросов к серверу БД на изменение данных;
-
Отправка запросов к серверу БД на удаление данных;
-
Получение данных от сервера БД в ответ на запрос.
В Таблице 4 представлены модули серверной части приложения с описанием их назначения.
Таблица 4 – Модули серверной части приложения
Модуль
| Назначение
|
db.class.php
| Класс для работы с БД
|
index.php
| Страница описания клиники
|
uslugi.php
| Страница услуг
|
uslugit_table.php
| Добавление, удаление услуг
|
sotr.php
| Страница сотрудников
|
sotr_table.php
| Вывод данных сотрудников
|
mytrip.php
| Страница записей пользователя
|
galery.php
| Страница галереи
|
edit_sotr.php
| Редактирование данных сотрудников
|
Продолжение Таблицы 4
del_sotr.php
| Удаление сотрудников
|
header.php
| Шапка сайта
|
footer.php
| Подвал сайта
|
class DB {
/* Параметры подключения к серверу БД*/
protected $dbname='solar'; // Имя БД
protected $dbuser='root'; // Имя пользователя
protected $dbhost='localhost'; // Адрес сервера
protected $dbpass=''; // Пароль
private $_connect;
private $db_select;
public $row;
/*Подключаемся к базе данных*/
public function __construct() {
$this->_connect=@mysql_connect ($this->dbhost, $this->dbuser, $this->dbpass);
if (!$this->_connect) {
exit («В настоящий момент сервер базы данных недоступен»);
}
$this->db_select=mysql_select_db ($this->dbname, $this->_connect);
if (!$this->db_select) {
exit('В настоящий момент база данных недоступна');
}
return $this->db_select;
}
/*Делаем запрос к базе данных*/
public function query($q) {
$this->result=mysql_query($q, $this->_connect);
//echo $q;
if (!$this->result) {
echo «
Не удалось выполнить SQL запрос «;
echo $q.”
”;
echo(mysql_error());
echo”
”;
}
//echo “
$q
”;
return $this->result;
}
/* Количество строк в запросе*/
public function query_count($result) {
$this->row_count=mysql_num_rows($this->result);
return $this->row_count;
}
/*Переводим строку в ассоциативный массив*/
public function fetch_assoc($result) {
$this->fetch=mysql_fetch_assoc($result);
return $this->fetch;
}
/*Переводим весь запрос в ассоциативный массив*/
public function fetch_all($result) {
while ($fetch=mysql_fetch_assoc($result)) {
$rows[]=$fetch;
}
return $rows;
}
public function ransform_date($dat) {
$data[‘day’]=substr($dat, 0, 2);
$data[‘month’]=substr($dat, 3, 2);
$data[‘year’]=substr($dat, 6, 4);
return $data;
}
/*Удалить запись из таблицы $table по полю $id_field равному $id*/
public function delete_record($table, $id_field, $id) {
$q=”DELETE FROM $table WHERE $id_field=’$id’”;
$delete_record=$this->query($q);
return $delete_record;
}
public function delete_set($table, $set) {
$q=”DELETE FROM $table WHERE $set”;;
$delete_record=$this->query($q);
return $delete_record;
}
/*Вставляет набор данных $set в таблицу $table*/
public function insert_record($table, $set) {
$q=”INSERT INTO $table $set”;
$insert_record=$this->query($q);
}
/*Обновляет набор данных $set в таблице $table*/
public function update_record($table, $set, $id_field, $id) {
$q=”UPDATE $table SET $set WHERE $id_field=’$id’”;
$update_record=$this->query($q);
}
public function get_last_id($table) {
$q=”SELECT LAST_INSERT_ID() FROM $table”;
$last=$this->fetch_assoc($this->query($q));
$last_id=$last[‘LAST_INSERT_ID()’];
return $last_id;
}
}