- •Рецензенты:
- •Введение 7 Глава 1. Создание Web‑страниц, html, vbSript 9
- •Глава 2. Weв-программирование на языке php 96
- •Глава 3. Практикум по разработке сайтов и Web-программированию 155
- •Глава 1. Создание Web‑страниц, html, vbSript
- •1.1. Обзор средств и технологий создания Web‑страниц и Web-приложений
- •1.1.1. Языки описания документов
- •1.1.1.2. Динамический html.
- •1.1.1.3. Язык гипертекстовой разметки xml.
- •1.1.1.5. Язык vrml
- •1.1.1.6. Мультимедйные средства и редакторы
- •1.1.2. Языки и технологии Web-программирования
- •1.1.2.1. Клиентские приложения
- •1.1.2.2. Серверные приложения
- •1.1.2.3. Поддержка состояния
- •1.1.3. Системы управления контентами сайта (cms)
- •1.1.5. Использование поисковых возможностей Интернет
- •1.2. Основы html
- •1.2.1. Правила написания
- •1.2.2. Структура документа
- •1.2.3. Форматирование текста
- •1.2.4. Атрибуты выравнивания текста и управления цветом
- •1.2.5. Шрифты
- •1.2.6. Списки
- •1.2.7. Изображения
- •1.2.8. Таблицы
- •1.2.9. Якорь (элемент привязки документов, их частей, почты)
- •1.2.10. Фреймы
- •1.2.11. Формы, управляющие элементы
- •1.2.12. Использование компонентов ActiveX
- •1.2.13. Дополнительные теги
- •1.2.14. Листы стилей
- •1.3. Клиент и сервер
- •1.4. Создание asp‑файла
- •1.5. Основы создания сценариев
- •1.6. Управление браузером
- •1.6.1. Объект Window
- •1.6.2. Объект Frame
- •1.6.3. Объект Location
- •1.6.4. Объект Navigator
- •1.6.5. Объект History
- •1.6.6. Объект Document
- •1.6.7. Объект Links
- •1.6.8. Объект Anchors
- •1.6.9. Объект Forms
- •1.6.10. Объект Elemеnts
- •1.6.10.1. Кнопки (Button, Reset, Submit)
- •1.6.10.2. Переключатели (CheckBox, Radio)
- •1.6.10.3. Поля ввода (Text, TextArea, Password)
- •1.6.10.4. Списки выбора (Select)
- •1.7. Объекты asp
- •1.8. Работа с текстовыми файлами
- •1.9. Работа с базами данных
- •1.10. Визуальный редактор html‑документов Dreamweaver
- •1.10.1. Палитра основных объектов
- •1.10.2. Настройка Dreamweaver
- •1.10.3. Структура и размещение файлов
- •1.10.4. Создание заготовки html‑документа
- •1.10.5. Создание пустой таблицы
- •1.10.6. Форматирование ячеек таблицы
- •1.10.7. Размещение картинки
- •1.10.8. Создание меню
- •1 .10.9. Форматирование текста
- •1.10.10. Режимы работы объектов
- •1.10.11. Команды
- •1.10.12. Анимация
- •Вопросы для самопроверки и контроля
- •Глава 2. Weв-программирование на языке php
- •2.1. Основные положения
- •2.1.1. Среды разработки
- •2.1.2. Настройка php
- •2.1.3. Правила написания программы
- •2.2. Типы данных и переменные
- •2.2.1. Типы данных
- •2.2.2. Переменные
- •2.3. Выражения, операции и операторы
- •2.3.1. Выражения и операции
- •2.3.2. Операторы
- •2.4. Функции
- •2.5. Массивы
- •2.6. Объектно-ориентированное программирование
- •2.6.1. Объявление класса
- •2.6.2. Основные стандартные функции
- •2.7. Файлы
- •2.7.1. Открытие и закрытие файлов
- •2.7.2. Запись в файл
- •2.7.3. Чтение из файла
- •2.7.4. Запуск внешних программ на сервере
- •2.7.5. Работа с файловой системой
- •2.7.6. Работа с каталогами
- •2.8. Регулярные выражения и строки
- •2.8.1. Регулярные выражения
- •2.8.2. Стандартные интервальные выражения (символьные классы)
- •2.8.3. Функции поиска в стиле posix
- •2.8.4. Строковые функции
- •2.8.5. Преобразование текста в html
- •2.9. Динамическое создание страниц
- •2.9.1. Простые ссылки
- •2.9.2. Файловые компоненты (шаблоны)
- •2.10. Формы
- •2.10.1. Элементы для ввода информации.
- •2.10.2. Элементы форм, ориентированные на ввод с помощью мышки
- •2.10.3. Проблема выравнивания полей для различных браузеров и экранов дисплеев
- •2.11. Базы данных
- •2.11.1. Стандартные функции рнр для работы с MySql
- •2.11.2. Работа с сервером баз данных с различными субд через odbc
- •2.11.3. Другие субд
- •2.12. Шаблоны
- •2.12.1. Основные понятия
- •2.12.2. Схема построения шаблона
- •1) Регистрация файлов
- •2) Регистрация переменных
- •3) Обработка файла
- •4) Вывод файла
- •2.14. Безопасность
- •2.14.1. Проблемы конфигурации
- •2.14.2. Маскировка файлов данных и конфигурационных файлов
- •2.14.3. Хранение файлов за пределами корневого каталога документов
- •2.14.4. Безопасность данных
- •2.14.5. Шифрование данных
- •2.14.6. Аутентификация пользователя
- •2.15. Рекомендации
- •2.15.1. Программирование на php
- •2.15.2. Использование MySql
- •Вопросы для самопроверки и контроля
- •Глава 3. Практикум по разработке сайтов и Web-программированию
- •3.1. Разработка учебного сайта заказов на авиабилеты Приведем пример разработанного учебного сайта (рисунок 3.1.1).
- •3.2. Разработка Web-приложений на php для ведения таблиц в базе данных с субд MySql
- •3.2.1. Таблица единиц измерения
- •3.2.2. Таблица успеваемости студентов
- •3.3. Разработка Web-приложения на php для ведения таблицы единиц измерения в базе данных с субд Access
- •3.4. Разработка Web-приложения на php для поиска и вывода оценок студента из базы данных успеваемости с субд Access
- •3.5. Разработка Web-приложения на php по трудоустройству
- •3.5.1. Постановка задачи
- •3.5.2. База данных
- •3.5.3. Программа формирования и ведения резюме (Vipuskniki.Php).
- •3.5.4. Функция проверки правильности даты (proverkadati.Php)
- •3.5.5. Функция проверки номера года (proverkagoda)
- •3.5.6. Функция проверки натурального числа (proverkahisla)
- •3.5.7. Подпрограмма чтения поля с фотографией (VivodFoto.Php)
- •3.5.8. Программа ввода параметров поиска записей-резюме
- •3.5.9. Программа поиска записей-резюме (ObrabRabotodateli.Php)
- •3.5.10. Программа переноса сообщений работодателей кандидатам (ObrabRabotodateli2.Php)
- •3.6. Задачи для программирования
- •3.6.1. Формирование форм
- •3.6.2. Работа с базой данных
- •3.6.3. Дополнительные задачи
- •3.6.3.1. Циклы
- •3.6.3.2. Массивы
- •3.6.3.3. Функции
- •3.6.3.4. Формы
- •3.6.3.5.Файлы
- •3.6.3.6. Строки
- •3.6.3.7. Графика
- •3.6.3.8. Субд MySql
- •3.7. Контрольные работы
- •3.7.1. Разработка учебного сайта
- •3.7.2. Разработка учебного Web-приложения по ведению базы данных
- •Глава 4. JavaScript Введение
- •События JavaScript
- •Показать и скрыть элемент с текстом
- •Динамическая подгрузка html контента на JavaScript
- •Функция Confirm в JavaScript
- •Таймер на JavaScript
- •Анимация JavaScript
- •Калькулятор стоимости на JavaScript
- •Подсчет количества символов на JavaScript
- •4.1. Основы языка
- •Приложение 1. Ответы на вопросы для самопроверки
- •Приложение 2. Вопросы к экзамену или зачету.
- •Предметный указатель
- •Библиографический список
- •Плещёв Владимир Васильевич Разработка сайтов и Web-программирование:
- •С примерами и упражнениями
Вопросы для самопроверки и контроля
Вопросы для самопроверки
Используется ли специальный символ переноса в HTML?
Какой тег HTML используется для включения в HTML‑документ ActiveX‑элемента?
Что представляет собой стиль в HTML?
Что представляет собой ASP‑страница?
Каково назначение кнопки типа Submit и одноименного метода объекта Form в HTML?
Контрольные вопросы
Каково назначение метода Write объекта Response?
Каково назначение тега <SCRIPT>?
Каково назначение тега <% %>?
Каково назначение HTML?
Каково назначение атрибута ACTION в теге <FORM>?
Каково назначение кнопки типа Reset в HTML?
Каково назначение Dreamweaver?
Глава 2. Weв-программирование на языке php
2.1. Основные положения
Расмус Лердорф в 1995 году разработал РНР (Hypertext Processor). РНР лучше всего охарактеризовать как работающий на стороне сервера встроенный язык сценариев Web, позволяющий разработчикам быстро и эффективно строить динамические web-приложения. С позиций грамматики и синтаксиса РНР напоминает язык программирования С. Одним из главных достоинств РНР является тот факт, что он внедряется прямо в HTML-код.
Механизм РНР просто начинает выполнять код после первой экранирующей последовательности (<?) и продолжает выполнение до того момента, когда он встретит парную экранирующую последовательность (?>).
Хотя РНР обычно рекомендуется использовать в сочетании с HTML, он с таким же успехом интегрируется и в JavaScript, WML, XML и другие языки. Нет проблем и с зависимостью от браузеров, поскольку перед отправкой клиенту сценарии РНР полностью компилируются на стороне сервера. В сущности, сценарии РНР могут передаваться любым устройствам с браузерами, включая сотовые телефоны, электронные записные книжки, пейджеры и портативные компьютеры.
Поскольку РНР не содержит кода, ориентированного на конкретный web-сервер, пользователи не ограничиваются определенными серверами (возможно, незнакомыми для них). Apache, Microsoft IIS, Netscape Enterprise Server, Stronghold и Zeus — РНР работает на всех перечисленных серверах. Поскольку эти серверы работают на разных платформах, РНР в целом является платформенно-независимым языком и существует на таких платформах, как UNIX, Solaris, FreeBSD и Windows 95/98/NT.
Средства РНР позволяют программисту работать с внешними компонентами, такими как Enterprise Java Beans или СОМ-объекты Win32.
Содержание данной главы сформировано на основе материалов портала ISO (http://www.iso.staratel.com/InfTech/php/PHP.htm).
При описание PHP в данной главе, устаревшие конструкции и форматы операторов не описываются.
2.1.1. Среды разработки
Denwer (Денвер) - включает в себя набор дистрибутивов: инсталлятор (поддерживается также инсталляция на flash-накопитель); Apache, SSL, SSI, mod_rewrite, mod_php; PHP5 с поддержкой GD, MySQL, sqLite; MySQL5 с поддержкой транзакций; система управления виртуальными хостами, основанная на шаблонах; система управления запуском и завершением всех компонентов Денвера; phpMyAdmin (система управления MySQL через Web-интерфейс); эмулятор sendmail и SMTP-сервера (отладочная «заглушка» на localhost:25, складывающая приходящие письма в/tmp в формате .eml); поддерживается работа совместно с PHP, Perl, Parser и т.д.
Широко используется Web-разработчиками для разработки Web-приложений и сайтов на «домашней» (локальной) Windows-машине без необходимости выхода в Интернет. Главная особенность Денвера — удобство при установке всех полностью взаимодействующих компонент Web-разработчика и удаленной работе сразу над несколькими независимыми проектами и возможность размещения на Flash-накопителе.
PHPTriad - всеобъемлющий пакет для Win32, который включает все актуальные средства разработки в Интернет: PHP, Apache, MySQL, phpMyAdmin. Самостоятельно инсталлируется и настраивается.
DevelStudio - позволяет создавать полноценные программы на языке PHP с поддержкой графического интерфейса.
Notepad++ - редакторов исходных текстов. Редактор поддерживает подсветку синтаксиса многих языков, в число которых входит и PHP. Но он не является полноценной средой разработки (notepad-plus-plus.org).
NetBeans ide - полноценная среда разработки. Для корректной работы NetBeans необходимо перед её установкой установить пакеты Sun JDK или J2EE SDK (netbeans.org).
PhpStorm - имеется удобная настройка и использование отладчика, работает быстро. Индивидуальная лицензия стоит 99$ (www.jetbrains.com).
Zend Studio - реализованы удобные подсказки и советы, содержащие не только текст, но и наглядные иллюстрации. Настраиваемый интерфейс также довольно удобен. Помимо PHP поддерживается редактирование HTML и JavaScript. Имеется возможность автоматического завершения наиболее востребованных элементов кода. Есть встроенный браузер, позволяющий видеть результаты обработки кода, не выходя из программы. Программа платная (www.zend.com).
Eclipse PDT – содержит все инструменты для разработки. Редактор кода построен по такой схеме, что можно редактировать несколько файлов одновременно. Встроенный браузер показывает результаты обработки кода непосредственно в Eclipse PDT без необходимости перехода в штатный браузер компьютера. Поддерживается редактирование и синтаксическая подсветка для HTML и JavaScript. Производительность на порядок выше и все необходимые для разработки средства работают отлично. Имеет возможность подключения дополнительных модулей, расширяющих функционал. Коллекция плагинов для Eclipse поражает своим разнообразием и позволяет добавить как новые возможности по работе с PHP, так и с многими другими языками программирования (www.eclipse.org).
PHP Base Library - утилита для PHP-разработчиков.
PHP Coder - редактор и интегрированная среда для разработки скриптов на PHP. Автозавершение, менеджер проектов, подсветка синтаксиса, документация по языку. Требует интерпретатор PHP.
PHP Expert Editor - интерфейс и большинство функций заимствованы из DzSoft PHP Editor. Имеетя проверка синтаксиса и отладка с точками останова. В дистрибутив также входит DBG Listener.
PHPGeM - программа для ускорения создания PHP-скриптов, работающих с таблицами.
