- •1. Статические и динамические Web-страницы. Особенности скриптовых программ. Анализ языков управления сценариями (JavaScript, vbScript, php, Perl).
- •2. Назначение и применение языка JavaScript. Ввод и вывод данных. Типы данных. Переменные и операторы. Функции. Встроенные объекты. Пользовательские объекты. Специальные операторы.
- •Способ 1: url-схема "JavaScript:"
- •Способ 2: обработчики событий
- •Способ 3: подстановки
- •Размещение кода внутри html-документа
- •Условная генерация html-разметки на стороне браузера
- •Комментарии в html и JavaScript
- •Регистр символов
- •Указание языка сценария
- •Литералы
- •Переменные
- •Массивы
- •Метод join()
- •Метод reverse()
- •Метод sort()
- •Операторы языка
- •Функции
- •Функция как тип данных
- •Функция как объект
- •3. JavaScript. Создание сценариев. Понятие динамического html. Расположение объектов, обработка событий, объекты, управляемые сценариями. Понятие события. Работа с окнами и фреймами. Объекты
- •Операторы работы с объектами
- •Клиентские объекты
- •Иерархия классов dom
- •Коллекции
- •Cвойства
- •События
- •Пользовательские объекты
- •Понятие пользовательского объекта
- •Прототип
- •Методы объекта Object
- •4. JavaScript. Объектная модель броузера и документа. Особенности объектов Window, Document, Location, History, Navigator, Event, Screen Объект window
- •Свойства объекта window Поле статуса и свойство window.Status
- •Программируем status
- •Программируем defaultStatus
- •Поле адреса и свойство window.Location
- •Свойства объекта location
- •Методы объекта location
- •История посещений (history)
- •Тип браузера (navigator)
- •Методы объекта window
- •Методы focus() и blur()
- •Метод setTimeout()
- •Метод clearTimeout()
- •Методы setInterval() и clearInterval()
- •События объекта window
- •Переменные как свойства окна
- •Объект document
- •Фреймы (Frames)
- •Иерархия и именование фреймов
- •Коллекция фреймов
- •Передача данных во фрейм
- •5. Язык сценариев php. Синтаксис языка.
- •Основной синтаксис
- •Разделение инструкций
- •Комментарии
- •6. Основы php. История развития языка php История php
- •7. Основы php. Настройка среды разработки Установка и настройка по
- •Установка Apache 1.3.29 под Windows xp
- •Установка php 4.3.4 под Windows
- •Установка php под Linux
- •Дистрибутив Денвер
- •Константы
- •10. Основы php. Типы данных в php Типы данных
- •Тип boolean (булев или логический тип)
- •Тип integer (целые)
- •Тип float (числа с плавающей точкой)
- •Тип string (строки)
- •Одинарные кавычки
- •Двойные кавычки
- •Тип array (массив)
- •Определение при помощи array()
- •Определение с помощью синтаксиса квадратных скобок
- •Тип object (объекты)
- •Тип resource (ресурсы)
- •11. Основы php. Операторы. Операторы присваивания. Операторы
- •12. Основы php. Математические функции
- •13. Основы php. Арифметические операции в рнр
- •14. Основы php. Операторы. Приоритет операторов
- •15. Основы php. Операторы. Оператор исполнения
- •16. Основы php. Операторы. Строковые операторы
- •17. Основы php. Операторы. Битовые операторы
- •18. Основы php. Операторы. Условный оператор if Оператор if
- •Оператор else
- •Оператор elseif
- •24. Основы php. Циклы. Цикл for
- •25. Основы php. Циклы. Цикл while
- •26. Основы php. Циклы. Цикл do... While
- •27. Основы php. Циклы. Цикл foreach
- •28. Основы php. Операторы. Оператор break. Бесконечные циклы Операторы передачи управления
- •29. Основы php. Операторы. Оператор continue Операторы передачи управления
- •30. Основы php. Массивы. Основы php. Индексы массивов
- •Массивы
- •Операции с массивами
- •Функция count
- •Функция in_array
- •Функция array_search
- •Функция array_keys
- •Сортировка массивов
- •Функция sort
- •Функции asort, rsort, arsort
- •Функция array_unique
- •Сортировка массива по ключам
- •Сортировка с помощью функции, заданной пользователем
- •Применение функции ко всем элементам массива
- •Выделение подмассива Функция array_slice
- •Функция array_chunk
- •Сумма элементов массива
- •31. Основы php. Обработка данных пользователя из форм Протокол http и способы передачи данных на сервер
- •Форма запроса клиента
- •Использование html-форм для передачи данных на сервер
- •Для метода get
- •Для метода post
- •Обработка запросов с помощью php
- •Пример обработки запроса с помощью php
- •32. Основы php. Использование булевых операторов в структурах управляющей логики// в операторах?
- •33. Пользовательские функции в php. Создание функций
- •Функции, определяемые пользователем
- •Аргументы функций
- •Списки аргументов переменной длины
- •Использование переменных внутри функции Глобальные переменные
- •Статические переменные
- •Возвращаемые значения
- •Возвращение ссылки
- •Переменные функции
- •Внутренние (встроенные) функции
- •34. Работа с файлами в php. Открытие файла. Отображение файлов. Закрытие файла Создание файла Функция fopen
- •Закрытие соединения с файлом
- •35. Работа с файлами в php. Чтение из файлов и запись в файлы Запись данных в файл Функция fwrite
- •Чтение данных из файла
- •Функция fread
- •Функция fgets
- •Функция fgetss
- •Функция fgetc
- •Функция readfile
- •Функция file
- •Функция file_get_contents
- •Проверка существования файла
- •Функция file_exists
- •Функция is_writable
- •Функция is_readable
- •36. Работа с файлами в php. Копирование, переименование и удаление файлов
- •37. Работа с файлами в php. Работа с каталогами //в 38
- •38. Язык сценариев php. Управление сессиями. Работа с www. Работа с Cookies
- •Авторизация доступа
- •Механизм сессий
- •Настройка сессий
- •Работа с сессиями Создание сессии
- •Регистрация переменных сессии
- •Удаление переменных сессии
- •Безопасность
- •39. Язык сценариев php. Взаимодействие с базами данных MySql.
- •Построение интерфейса для добавления информации
- •Установка соединения
- •Выбор базы данных
- •Получение списка полей таблицы
- •Отображение списка полей в html-форму
- •Запись данных в базу данных
- •Отображение данных, хранящихся в MySql
- •40. Php и MySql. Обработка результатов запроса. // в 40
- •41. Анализ субд для работы в Web (WebSql, w3ql, WebOql, MySql).
39. Язык сценариев php. Взаимодействие с базами данных MySql.
В дистрибутив PHP входит расширение, содержащее встроенные функции для работы с базой данных MySQL. В этой лекции мы познакомимся с некоторыми основными функциями для работы с MySQL, которые потребуются для решения задач построения web-интерфейсов с целью отображения и наполнения базы данных. Возникает вопрос, зачем строить такие интерфейсы? Для того чтобы вносить информацию в базу данных и просматривать ее содержимое могли люди, не знакомые с языком запросов SQL. При работе с web-интерфейсом для добавления информации в базу данных человеку нужно просто ввести эти данные в html-форму и отправить их на сервер, а наш скрипт сделает все остальное. А для просмотра содержимого таблиц достаточно просто щелкнуть по ссылке и зайти на нужную страницу.
Для наглядности будем строить эти интерфейсы для таблицы Artifacts, в которой содержится информация об экспонатах виртуального музея информатики. В предыдущей лекции мы уже приводили структуру этой коллекции, а также ее связи с коллекциями описания персон (Persons) и изображений (Images). Напомним, что каждый экспонат в коллекции Artifactsописывается с помощью следующих характеристик:
название (title);
автор (author);
описание (description);
альтернативное название (alternative);
изображение (photo).
Название и альтернативное название являются строками менее чем 255 символов длиной (т.е. имеют тип VARCHAR(255)), описание - текстовое поле (имеет тип TEXT), а в полях "автор" и "изображение" содержатся идентификаторы автора из коллекции Persons и изображения экспоната из коллекции Images соответственно.
Построение интерфейса для добавления информации
Итак, у нас есть какая-то таблица в базе данных. Чтобы построить интерфейс для добавления информации в эту таблицу, нужно ее структуру (т.е. набор ее полей) отобразить в html-форму.
Разобьем эту задачу на следующие подзадачи:
установка соединения с БД ;
выбор рабочей БД ;
получение списка полей таблицы ;
отображение полей в html-форму.
После этого данные, введенные в форму, нужно записать в базу данных. Рассмотрим все эти задачи по порядку.
Установка соединения
Итак, первое, что нужно сделать, - это установить соединение с базой данных. Воспользуемся функцией mysql_connect.
Синтаксис mysql_connect
ресурс mysql_connect ( [строка server
[, строка username [, строка password
[, логическое new_link
[, целое client_flags]]]]])
Данная функция устанавливает соединение с сервером MySQL и возвращает указатель на это соединение или FALSE в случае неудачи. Для отсутствующих параметров устанавливаются следующие значения по умолчанию:
server = 'localhost:3306'
username = имя пользователя владельца
процесса сервера
password = пустой пароль
Если функция вызывается дважды с одними и теми же параметрами, то новое соединение не устанавливается, а возвращается ссылка на старое соединение. Чтобы этого избежать, используют параметр new_link, который заставляет в любом случае открыть еще одно соединение.
Параметр client_flags - это комбинация следующих констант: MYSQL_CLIENT_COMPRESS (использовать протокол сжатия),MYSQL_CLIENT_IGNORE_SPACE (позволяет вставлять пробелы после имен функций), MYSQL_CLIENT_INTERACTIVE (ждатьinteractive_timeout секунд - вместо wait_timeout - до закрытия соединения).
Параметр new_link появился в PHP 4.2.0, а параметр client_flags - в PHP 4.3.0.
Соединение с сервером закрывается при завершении исполнения скрипта, если оно до этого не было закрыто с помощью функцииmysql_close().
Итак, устанавливаем соединение с базой данных на локальном сервере для пользователя nina с паролем "123":
<?
$conn = mysql_connect(
"localhost", "nina","123")
or die("Невозможно установить
соединение: ". mysql_error());
echo "Соединение установлено";
mysql_close($conn);
?>
Действие mysql_connect равносильно команде
shell>mysql -u nina -p123
