ресурс для начинающих веб-разработчиков
комплексные веб-услуги по созданию сайтов

Справочный материал по основным языкам программирования и верстки сайтов.

Готовая методика создания простых и сложных динамичных сайтов, с использованием PHP и MySQL.

Использование веб-редактора Adobe Dreamweaver в разработке сайтов.

Использование графических редакторов Adobe Flash, Adobe Photoshop, Adobe Fireworks в подготовке веб-графики.

Разработка веб сайтов под "ключ".

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

Основы PHP и MySQL

Основы PHP и MySQL

Для того, чтобы воспользоваться членами или методами, не всегда обязательно объявлять объект класса. Объявление внутренних компонентов класса статическими при помощи ключевого слова static делает их доступными в любой момент без объявления объекта класса. Обращение к таким компонентам осуществляется при помощи следующей конструкции.

Протокол — это набор синтаксических и сематических правил, использующихся при обмене данных между двумя компьютерами, который определяет команды, их синтаксис и порядок отправки, а также очередность отправки команд. Хотя протоколов взаимодействия очень много, веб-разработчики в основном имеют дело с прикладными протоколами и в первую очередь с HTTP-протоколом, который служит для обмена информацией между веб-сервером и браузером (клиентом).

В объемном проекте часто трудно проконтролировать все возможные ситуации, и рано или поздно отображение информации в окно браузера осуществляется перед выполнением функции header(), что приводит к выводу предупреждения: Warning: Cannot modify header information - headers already sent by. Такая ситуация может возникнуть например, при наличии случайного пробела или какой-либо ошибки, которая ни разу не возникала в процессе тестирования. Не стоит и говорить, что вывод подобного предупреждения искажает дизайн сайта и выглядит непрофессионально.

Сессии и cookie

Обновлено: 2012-11-07 15:01:00

НTTP-протокол, лежащий в основе сети Интернет, не сохраняет информации о состоянии сеанса. Это означает, что любое обращение клиента сервер воспринимает как обращение нового клиента, и даже если клиент формирует запрос для загрузки картинок с текущей страницы, сервером он воспринимается как запрос нового клиента, никак не связанного с тем, который только что загрузил страницу. Данная схема достаточно хорошо работала для статических страниц, но стала совершенно неприемлемой для динамических.

Весь раздел

1. Основы PHP и MySQL
2. Установка и настройка веб-сервера Apache. Установка РНР под Windows. Подключение PHP к Apache
3. Установка и настройка MySQL
4. Основы PHP. Характеристика PHP. PHP-сценарии
5. Пример PHP-программы. Использование PHP в Web
6. Типы данных PHP
7. Переменные и выражения в PHP. Создание переменных PHP. Область действия переменной PHP
8. Условные обозначения PHP
9. Константы PHP. Определение констант PHP
10. Выражения PHP. Вызов внешней программы PHP
11. Арифметические, строковые, присваивания и другие операции PHP
12. Конструкции языка PHP. Инструкция if-else. Оператор switch. Цикл с постусловием do-while. Инструкции break и continue
13. Нетрадиционное использование do-while и break. Цикл foreach. Конструкция switch-case. Инструкция require. Инструкция include
14. Массивы PHP. Автомассивы PHP. Многомерные массивы PHP. Отображение массивов PHP
15. Операции над массивами PHP. Перемещение по массиву. Строки PHP
16. Функции PHP. Инструкция return. Локальные переменные PHP. Глобальные переменные PHP
17. Массив GLOBALS. Статические переменные PHP. Рекурсия. Вложенные функции PHP. Возврат функцией ссылки
18. Строковые функции PHP. Конкатенация строк PHP
19. Строковые функции PHP. Форматирование строк PHP. Подсветка кода РНР. Преобразование кодировок PHP. Работа с URL. Работа с путями к файлам и каталогам
20. Математические функции PHP
21. Дата и время. Работа с датами
22. Работа с файлами PHP. Открытие, отображение, запись и закрытие файлов
23. Cookies и управление сессиями
24. Объекты в РНР5. Классы и объекты. Функции для работы с методами и классами. Конструктор класса. Деструктор объекта. Аксессоры
25. Объекты в РНР5. Копирование, сравнение, клонирование объектов
26. Серверные сценарии на РНР. Динамическое создание страниц
27. Формы. Управление сбором данных
28. Формы и РНР. Передача данных формы из одного сценария в другой. Oбработка формы с одним сценарием
29. Автоматическая отправка данных по электронной почте. Сохранение пользовательских данных в файле
30. Проверка ошибок. Проверка пароля и имени пользователя. Трансляция переменных окружения. Трансляция cookies
31. Регулярные выражения. Функции для работы с регулярными выражениями
32. Конвертация даты. Проверка правильности ввода e-mail. Проверка правильности ввода URL. Проверка правильности ввода имени. Проверка правильности ввода числа. Корректность ввода даты
33. Работа с HTML-тегами: извлечение параметров и текста. Подсветка синтаксиса PHP
34. Работа с файлами и каталогами. Загрузка файлов на сервер. Загрузка файлов с сервера. Определение и подсчет файлов в каталоге
35. Работа с правами доступа. Создание каталога. Удаление каталогов. Редактирование файлов на сервере. Удаление строк из середины файла. Cлучайный вывод из файла
36. Работа с индексным файлом: запись, извлечение, редактирование и удаление. Блокировка файла. Сохранение и извлечение из файла массивов и объектов. Работа с csv - файлами. Загрузка данных из MS Excel
37. Плоские файлы. Создание, заполнение, чтение, замена и удаление файла
38. Работа с MySQL. Типы таблиц. Основы SQL. Создание баз данных и таблиц. Удаление базы данных. Выбор базы данных
39. Типы данных MySQL. Числовые данные. Строковые данные
40. Cоздание и удаление таблиц MySQL
41. Вставка числовых, строковых, календарных и уникальных значений в таблицу. Механизм AUTO_INCREMENT
42. Многострочечный оператор INSERT. Удаление данных. Обновление записей. Выборка данных
43. Условная выборка. Псевдонимы столбцов. Сортировка записей
44. Вывод записей в случайном порядке. Ограничение выборки. Вывод уникальных значений. Объединение таблиц
45. Функции MySQL. Математические функции
46. Функции даты и времени MySQL
47. Строковые функции MySQL. Изменение кодировки строки
48. Безопасность и MySQL. Обратимое шифрование. Необратимое шифрование
49. Агрегатные функции MySQL. Подсчет количества записей в таблице. Поиск минимального и максимального значений. Сумма столбцов
50. Разные функции MySQL. Преобразование IP-адреса
51. РНР и MySQL. Соединение с сервером MySQL. Соединение с базой данных
52. Функции РНР для взаимодействия с MySQL
53. Закрытие соединения. Выполнение запросов. Выборка запросов. Определение числа записей
54. Транзакции. Избежание повторных запросов
55. Полнотекстовый поиск. Временные таблицы
56. Перенос баз данных с одного сервера на другой. Копирование бинарных файлов. Cоздание SQL-дампа
57. Объектно-ориентированное программирование и исключения. Создание классов. Cоздание объектов. Клонирование объектов
58. Подсчет объектов или статических членов и методов. Обработка исключительных ситуаций
59. Протокол HTML. Функции для работы с HTTP-заголовками
60. Буферизированный вывод. Размер и тип документа. Подавление кэширования. Базовая аутентификация
61. Сессии и cookie
62. Сокеты и CURL
63. Библиотека CURL
64. Получение HTTP-заголовков с сервера. Определение размера файла на удаленном хосте. Отправка данных методом POST
65. Фальсификация реферера. Фальсификация пользовательского агента. Фальсификация cookie. Работа с доменами и IP-адресами
66. Безопасность создаваемых Web-приложений. Проверка корректности данных, вводимых пользователем
67. Публикация изображений и файлов
68. Методы шифрования. Необратимое шифрование. Симметричное шифрование. Подбор пароля. Генерация пароля
69. SQL-инъекции. XSS-инъекции
70. Работа с FTP-сервером. Установка соединения с FTP-сервером. Навигация по FTP-серверу
71. Работа с изображениями. Подключение графической библиотеки
72. Создание изображений. Функции создания изображений
73. Функции для работы с цветом. Заливка изображения цветом
74. Функции рисования. Построение гистограммы
75. Функции настройки рисования. Функции для работы с текстом. Защитное изображение для HTML-формы