Основно учење PHP8+
Основе
Увод у језик PHP
Почетак рада
Извршавање кода PHP
Проблем са енкодингом
Приказ грешака PHP
Потпуни код за покретање PHP
Побољшан код за покретање
Преглед почетних PHP команди
Коментари у PHP
Коментари у учебнику
Приказ садржаја променљивих (dumping)
Функције у PHP
Променљиве
Коришћење променљивих
Промена вредности променљивих
Математичке операције са бројевима
Математичке операције са променљивим
Приоритет математичких операција
Једнаки приоритет
Групишуће заграде
Нијансе груписања
Разломци
Негативни бројеви
Остатак при дељењу
Степеновање
Приоритет степеновања
Стрингови
Сабирање стрингова
Размаци при сабирању стрингова
Дужина стринга
Проблем са ћирилицом
Тагови
Атрибути тагова
Логичке вредности
Вредност null
Аутоматска конверзија типова
Аутоматска конверзија у стринг
Нијансе конверзије у стринг
Конверзија у број
Конверзија у разломак
Конверзија разломка у цео број
Конверзија броја у стринг
Каракери стринга
Цифре у стрингу
Приступање цифрама броја
Нијансе рада са операцијом доделе
Скраћене операције
Инкременација
Префиксни и постфиксни тип
Практикум на проналажење грешака
Практикум на операције
Практикум на формуле
Низови
Увод у низове
Преглед садржаја низа
Појединачни елемент низа
Асоцијативни низови
Трик са кључевима
Редослед елемената
Дужина низа
Мењање елемената
Поновно упис елемената низа
Инкрементирање елемената
Попуњавање низова
Експлицитно одређивање кључева
Кључеви из променљивих
Праксис на проналажење грешака
Услови
Конструкција if-else
Оператори веће и мање
Провера једнакости
Провера неједнакости
Поређење променљивих
Типови података и конструкција if-else
Бројеви у наводницима
Једнакост по вредности и типу
Неједнакост по вредности и типу
Нијансе при поређењу типова података
Сложени услови у if-else
Логичко И
Логичко ИЛИ
Приоритет операција поређења
Груписање услова
Инвертовање исказа
Конструкција if-else и логичке вредности
Нестрого поређење логичких вредности
Скраћени if
Нијанса скраћених операција
Команда isset
Потискивање упозорења
Провера елемената низа
Команда empty
Необавезност команде else
Необавезност витичастих заграда
Проблем необавезности заграда
Комбинације if-else
Конструкција elseif
Угњеждени if
Конструкција switch
Необавезност default
Конструкција match
Необавезност break
Тернарни оператор
Оператор спајања са null
Ланци оператора спајања са null
Логичке операције
Одређивање дела сата
Провера дужине стрингова и низова
Провера карактера стринга
Провера остатка од дељења
Праксис на проналажење грешака
Праксис if else
Циклуси
Увод
Цикл foreach
Цикл foreach са кључевима
Цикл while
Цикл for
Услови у циклусима
Акумулирање суме бројева
Акумулирање суме елемената
Формирање стрингова у циклусу
Необавезност витичастих заграда
Проблем необавезности заграда
Инструкција break
Инструкција continue
Рад са заставицама
Угњеждени циклуси
Цикл for за низове
Попуњавање низова у циклусу
Мењање низова у циклусу
Савети за писање кода
Практикум на проналажење грешака
Практикум на циклусе
Видимензионалност
Увод
Тродимензионални низ
Асоцијативни низови
Произвољни низови
Итерација кроз вишедимензионалне низове
Итерација кроз тродимензионални низ
Рад са кључевима
Попуњавање вишедимензионалних низова
Попуњавање бројевима по редоследу
Низ асоцијативних низова
Конверзија вишедимензионалних низова
Математичке функције
Стринг функције
Дужина стринга
Регистар карактера
Извлачење стрингова
Провера стрингова
Претрага стрингова
Дељење стрингова
Чишћење крајева стринга
Штампање стринга са уметањем
Форматирање приказа бројева
Обртање стринга
Попуњавање стринга
Рад са таговима
Кодови карактера
Бројање подстрингова
Делови стринга
Функције низова
Претрага низова
Крајњи елементи
Резање низова
Спајање низова
Опсег у низу
Попуњавање низова
Спајање низова
Кључеви-вредности
Обртање
Замена
Уклањање дупликата
Бројање елемената
Разбијање на поднизове
Сортирање
Операције са скуповима
Случајност
Време
Рад са timestamp
Форматирање
Парсирање датума у слободном формату
Провера исправности
Временска зона
Измена
Поређење стрингова
Поређење датума без године
Упад датума у интервал
Поређење timestamp-ова
Корисничке функције
Увод
Параметри функције
Неколико параметара
Параметри-променљиве
Опциони параметри
Инструкција return
Секвенцијално позивање функција
Суптилност return-а
Петља и return
Примена return-а у петљама
Трик у раду са return-ом
Флагови у функцијама
Логички оператори у функцијама
Савети око функција
Практикум на проналажење грешака
Практикум на функције
Област видљивости
Референце-примитиви
Референце-низови
Референце у foreach
Унутрашње променљиве
Спољашње променљиве
Променљиве истог имена
Глобалне променљиве
Мењање параметара
Параметри-референце
Рекурзија
Рекурзија
Пример са параметром
Збир елемената низа
Рекурзија и вишедимензионални низови
Збир вишедимензионалног низа
Манипулације са елементима
Регуларни изрази
Увод
Оператори понављања
Групишуће заграде
Екранирање специјалних знакова
Списак специјалних знакова
Витасте заграде
Ограничавање похлепности
Групе знакова
Скупови знакова
Инвертовање скупова знакова
Особине ћирилице
Специјални знакови унутар скупова
Групе знакова унутар скупова
Специјални знакови-изузеци унутар скупова
Символ капице унутар скупова
Особине цртице унутар скупова
Почетак и крај реда
Крај или почетак речи
Команда 'или'
Ограничивачи
Екранирање ограничивача
Обрнута коса црта
Провера ниске
Аутоматско тестиње регуларки
Провера целе ниске
Џепови приликом претраге
Претрага свих подударања
Сва подударања на џепове
Измена понашања претраге
Нечувајуће заграде
Џепови приликом замене
Џепови у изразу
Именовани џепови
Именовани џепови унутар израза
Општи број џепова
Преглед напријед
Преглед уназад
Замена са колбеком
Модификатори
Игнорисање регистра регуларки
Коментари у регуларки
Рад са униокодом у регуларкама
Измена похлепности регуларки
Екранирање обичних знакова у регуларкама
Више модификатора регуларки
Аутоматско екранирање специјалних знакова
Филтрирање низа
Разбијање ниске у низ
Формирање стрингова
Уметање променљивих
Уметање елемената низа
Уметање елемената асоцијативних низова
Петља и уметање променљивих
Уметање елемената низова у петљи
Уметање елемената вишедимензионалних низова у петљи
Генерација тегова
Генерација тегова са атрибутима
Петља и генерација тегова
Петља и генерација тегова из низова
Петља и генерација тегова и атрибута
Петља и генерација HTML табела
Генерација HTML табеле помоћу једне петље
Генерација HTML табеле помоћу две угнежђене петље
Уметање PHP кода у HTML
Кратка echo команда
Приказ променљиве у HTML
Приказ елемената низа у HTML
Услови и прекид PHP кода
Блок else у прекиду PHP кода
Блок elseif у прекиду PHP кода
Петље и прекид PHP кода
Низ у петљи у прекиду PHP кода
Форме
Увод у форме
Метод слања форме
Добијање података из форми
Добијање података из форме методом GET
Добијање података из форме методом POST
Руковање формом у једној датотеци
Сакривање форме после слања
Чување вредности форме
Чување подразумеване вредности форме
Скраћени код за чување подразумеваних вредности
Елемент textarea
Чување вредности textarea после слања
Чекбокс
Нијансе коришћења чекбоксова
Чување вредности у чекбоксу
Радио-дугмад
Чување вредности у радио-дугмадима
Селектори
Атрибут value у селекторима
Чување вредности у селекторима
GET-упити
GET-упити помоћу линкова
Практикум
Сесије
Увод у сесије
Могући проблеми
Коришћење сесија на једној страници
Уклањање сесија
Заустављање целе сесије
Сесије и форме
Упис низова у сесије
Колачићи
Увод у колачиће
Проблем постављања колачића
Тренутно постављање колачића
Бројач освежавања странице
Време живљења колачића
Уклањање колачића
Тренутно уклањање колачића
Фајлов систем
Читање фајлова
Уписивање фајлова
Комбинација операција
Релативне путање
Апсолутне путање
Предности апсолутне путање
Апсолутне путање до скрипте
Преименовање фајлова
Померање фајлова
Умножавање фајлова
Брисање фајлова
Одређивање величине фајлова
Провера постојања фајлова
Креирање фолдера
Брисање фолдера
Преименовање фолдера
Померање фолдера
Читање садржаја фолдера
Разликовање фолдера од фајла
Рашчлањујемо садржај фолдера
Убацивање фајлова
Дељење верстке на елементе
Уписивање убацивања у променљиву
Прикључење фајлова
Једнократно прикључење фајлова
Уписивање прикључења у променљиву
Базе података
Увод у базе података
PhpMyAdmin
Тестна табела users
Припремне манипулације
Слање упита базе података
Проналажење грешака у бази података
Тестирање исправности
Проблеми са кодирањима
Комплетан тестни код
Добијање резултата
Добијање резултата у облику низа
Формирање низа у петљи
Избор записа
Логичке операције
Поља избора
Уметање записа
Уметање записа при одсутним колонама
Aжурирање записа
Брисање записа
Сортирање записа
Ограничавање количине
Бројање количине
Добијање количине
Напредни упити
Организација базе података
Повезивање табела
Добијање података из повезаних табела
Ланац повезаних табела
Повезивање преко табеле везе
Родбинске везе
Неколико потомака
Двострука веза
Практикум
Пракса базе података
Тестна табела users
Обликовање излаза
Брисање података
Преглед података
Додавање података
Уређивање података
Рад са HTTP
Уџбеник HTTP
Метод HTTP захтева
HTTP заглавља захтева
Низ заглавља HTTP захтева
Заглавља HTTP одговора
Проблем са заглављима HTTP одговора
Проблем са include
Слање стартне линије HTTP одговора
Слање статуса HTTP одговора
Преусмерења
Увод у преусмерења
Тренутно преусмерење
GET захтеви и преусмерење
Самопреусмерење са додавањем параметара
Flash поруке
Низ flash порука
Чување формулара
Поруке о успешном слању
Преусмерење при валидацији формулара
Аутентификација
Увод
Ауторизација
Сесије
Одјава из сесије
Регистрација
Ауторизација одмах при регистрацији
Додавање id у сесију
Скривање лозинке
Провера заузетости корисничког имена
Валидација
Хеширање
Додавање соли у регистрацију
Додавање соли у ауторизацију
Функција password_hash
Профил
Налог
Промена лозинке
Потврда лозинке
Брисање налога
Права
Регистрација са раздвајањем права
Права и нормализација базе података