Základný tutoriál PHP8+
Základy
Úvod do jazyka PHP
Začíname s PHP
Vykonávanie kódu PHP
Problém s kódovaním
Výpis chýb PHP
Úplný kód pre spustenie PHP
Vylepšený kód pre spustenie
Prehľad základných príkazov PHP
Komentáre v PHP
Komentáre v učebnici
Výpis premenných
Funkcie v PHP
Premenné
Používanie premenných
Zmeny hodnôt premenných
Matematické operácie s číslami
Matematické operácie s premennými
Priorita matematických operácií
Rovnaká priorita
Zátvorky pre zoskupovanie
Nuansy zoskupovania
Zlomky
Záporné čísla
Zvyšok po delení
Umocňovanie
Priorita umocňovania
Reťazce
Sčítanie reťazcov
Medzery pri sčítaní reťazcov
Dĺžka reťazca
Problém s cyrilikou
Tagy
Atribúty tagov
Logické hodnoty
Hodnota null
Automatická konverzia typov
Automatická konverzia na reťazec
Nuansy konverzie na reťazec
Konverzia na číslo
Konverzia na zlomok
Konverzia zlomku na celé číslo
Konverzia čísla na reťazec
Znaky reťazca
Číslice v reťazci
Prístup k čísliciam čísla
Nuansy práce s operáciou priradenia
Skrátené operácie
Inkrementácia
Prefixový a postfixový typ
Praxis na hľadanie chýb
Praxis na operácie
Praxis na vzorce
Polia
Úvod do polí
Zobrazenie obsahu poľa
Samostatný prvok poľa
Asociatívne polia
Trik s kľúčmi
Poradie prvkov
Dĺžka poľa
Zmena prvkov
Prepísanie prvkov poľa
Inkrementácia prvkov
Naplnenie polí
Explicitné určenie kľúčov
Kľúče z premenných
Praxis na hľadanie chýb
Podmienky
Konštrukcia if-else
Operátory väčšie a menšie
Kontrola rovnosti
Kontrola nerovnosti
Porovnanie premenných
Typy údajov a konštrukcia if-else
Čísla v úvodzovkách
Rovnosť podľa hodnoty a typu
Nerovnosť podľa hodnoty a typu
Nuansy pri porovnávaní typov údajov
Zložité podmienky v if-else
Logické A
Logické ALEBO
Priorita porovnávacích operácií
Zoskupovanie podmienok
Invertovanie výrokov
Konštrukcia if-else a booleovské hodnoty
Nestriktné porovnávanie logických hodnôt
Skrátený if
Nuansa skrátených operácií
Príkaz isset
Potlačenie varovania
Kontrola prvkov poľa
Príkaz empty
Nepovinnosť príkazu else
Nepovinnosť zložených zátvoriek
Problém nepovinnosti zátvoriek
Kombinácie if-else
Konštrukcia elseif
Vnorené if
Konštrukcia switch
Nepovinnosť default
Konštrukcia match
Nepovinnosť break
Ternárny operátor
Operátor zlúčenia s null
Reťazce operátorov zlúčenia s null
Logické operácie
Určenie časti hodiny
Kontrola dĺžky reťazcov a polí
Kontrola znaku reťazca
Kontrola zvyšku po delení
Praxis na hľadanie chýb
Praxis if else
Cyklusy
Úvod
Cyklus foreach
Cyklus foreach s kľúčmi
Cyklus while
Cyklus for
Podmienky v cykloch
Kumulácia súčtu čísel
Kumulácia súčtu prvkov
Formovanie reťazcov v cykle
Nepovinnosť zložených zátvoriek
Problém nepovinnosti zátvoriek
Príkaz break
Príkaz continue
Práca s príznakmi
Vnorené cykly
Cyklus for pre polia
Naplnenie polí v cykle
Zmena polí v cykle
Rady pre písanie kódu
Praxis na hľadanie chýb
Praxis na cykly
Viacrozmerné polia
Úvod
Trojrozmerné pole
Asociatívne polia
Ľubovoľné polia
Prechádzanie viacrozmerných polí
Prechádzanie trojrozmerného poľa
Práca s kľúčmi
Naplnenie viacrozmerných polí
Naplnenie číslami v poradí
Pole asociatívnych polí
Konverzia viacrozmerných polí
Matematické funkcie
Reťazcové funkcie
Dĺžka reťazca
Registr znakov
Vystrihnutie reťazcov
Kontrola reťazcov
Vyhľadávanie v reťazcoch
Rozdelenie reťazcov
Čistenie koncov reťazca
Výstup reťazca s vložením
Formátovanie zobrazenia čísel
Otočenie reťazca
Vyplnenie reťazca
Práca s tagmi
Kódy znakov
Počítanie podreťazcov
Časti reťazcov
Funkcie polí
Vyhľadávanie v poliach
Koncové prvky
Krájanie polí
Spájanie polí
Rozsah v poli
Zápĺňanie polí
Zlúčenie polí
Kľúče-hodnoty
Obrátenie
Nahradenie
Odstránenie duplíkátov
Počítanie prvkov
Rozdelenie na podpolia
Triedenie
Množinové operácie
Náhodné
Čas
Práca s timestamp
Formátovanie
Analýza dátumov vo voľnom formáte
Kontrola správnosti
Časové pásmo
Zmena
Porovnávanie reťazcov
Porovnanie dátumu bez roka
Zásah dátumu do intervalu
Porovnanie timestamp
Užívateľské funkcie
Úvod
Parametre funkcie
Niekoľko parametrov
Parametre-premenné
Voliteľné parametre
Inštrukcia return
Postupné volanie funkcií
Jemné miesto return
Cyklus a return
Použitie return v cykloch
Príklad práce s return
Príznaky vo funkciách
Logické operátory vo funkciách
Rady pre funkcie
Praxis na hľadanie chýb
Praxis na funkcie
Rozsah viditeľnosti
Referencie-primitívne typy
Referencie-pole
Referencie v foreach
Vnútorné premenné
Vonkajšie premenné
Premenné s rovnakým názvom
Globálne premenné
Zmena parametrov
Parametre-odkazy
Rekurzia
Rekurzia
Príklad s parametrom
Súčet prvkov poľa
Rekurzia a viacrozmerné polia
Súčet viacrozmerného poľa
Manipulácia s prvkami
Regulárne výrazy
Úvod
Operátory opakovania
Zátvorky na zoskupovanie
Escapovanie špeciálnych znakov
Zoznam špeciálnych znakov
Zložené zátvorky
Obmedzenie chamtivosti
Skupiny znakov
Sady znakov
Invertovanie sád znakov
Špecifiká cyriliky
Špeciálne znaky vnútri sád
Skupiny znakov vnútri sád
Výnimkové špeciálne znaky vnútri sád
Znak striešky vnútri sád
Špecifiká spojovníka vnútri sád
Začiatok a koniec riadku
Koniec alebo začiatok slova
Príkaz 'alebo'
Oddeľovače
Escapovanie oddeľovačov
Spätné lomítko
Kontrola reťazca
Automatické testovanie regulárnych výrazov
Kontrola celého reťazca
Záchytné skupiny pri vyhľadávaní
Vyhľadanie všetkých zhôd
Všetky zhody na záchytné skupiny
Zmena správania vyhľadávania
Nezachytávajúce zátvorky
Záchytné skupiny pri nahradzovaní
Záchytné skupiny vo výraze
Pomenované záchytné skupiny
Pomenované záchytné skupiny vo vnútri výrazu
Všeobecné číslo záchytných skupín
Náhľad dopredu
Náhľad dozadu
Nahradzovanie s callback funkciou
Modifikátory
Ignorovanie veľkosti písmen v regulárnych výrazoch
Komentáre v regulárnych výrazoch
Práca s unikódom v regulárnych výrazoch
Zmena chamtivosti regulárnych výrazov
Escapovanie obyčajných znakov v regulárnych výrazoch
Viacero modifikátorov regulárnych výrazov
Automatické escapovanie špeciálnych znakov
Filtrovanie poľa
Rozdelenie reťazca na pole
Formovanie reťazcov
Vloženie premenných
Vloženie prvkov poľa
Vloženie prvkov asociatívnych polí
Cyklus a vloženie premenných
Vloženie prvkov polí v cykle
Vloženie prvkov multidimenzionálnych polí v cykle
Generovanie tagov
Generovanie tagov s atribútmi
Cyklus a generovanie tagov
Cyklus a generovanie tagov z polí
Cyklus a generovanie tagov a atribútov
Cyklus a generovanie HTML tabuliek
Generovanie HTML tabuľky pomocou jedného cyklu
Generovanie HTML tabuľky pomocou dvoch vnorených cyklov
Vloženie PHP kódu do HTML
Krátky príkaz echo
Výstup premennej do HTML
Výstup prvkov poľa do HTML
Podmienky a prerušenie PHP kódu
Blok else v prerušení PHP kódu
Blok elseif v prerušení PHP kódu
Cykly a prerušenie PHP kódu
Pole v cykle v prerušení PHP kódu
Formuláre
Úvod do formulárov
Metóda odoslania formulára
Získavanie údajov z formulárov
Získavanie údajov z formulárov metódou GET
Získavanie údajov z formulárov metódou POST
Spracovanie formulára v jednom súbore
Skrytie formulára po odoslaní
Uchovanie hodnôt formulára
Uchovanie predvolenej hodnoty formulára
Skrátený kód pre uchovanie predvolených hodnôt
Element textarea
Uchovanie hodnoty textarea po odoslaní
Zaškrtávacie políčko
Nuansy používania zaškrtávacích políčok
Uchovanie hodnoty v zaškrtávacom políčku
Radiové tlačidlá
Uchovanie hodnoty v radiových tlačidlách
Selecty
Atribút value v selectoch
Uchovanie hodnoty v selectoch
GET požiadavky
GET požiadavky pomocou odkazov
Praxis
Relácie
Úvod do relácií
Možné problémy
Použitie relácií na jednej stránke
Odstránenie relácií
Ukončenie celej relácie
Relácie a formuláre
Zápis polí do relácií
Cookies
Úvod do cookies
Problém s nastavením cookies
Okamžité nastavenie cookies
Počítadlo obnovenia stránky
Čas životnosti cookies
Odstránenie cookies
Okamžité odstránenie cookies
Súborový systém
Čítanie súborov
Zápis súborov
Kombinácia operácií
Relatívne cesty
Absolútne cesty
Výhody absolútnej cesty
Absolútne cesty k skriptu
Premenovanie súborov
Presúvanie súborov
Kopírovanie súborov
Odstránenie súborov
Určenie veľkosti súborov
Kontrola existencie súborov
Vytvorenie priečinkov
Odstránenie priečinkov
Premenovanie priečinkov
Presúvanie priečinkov
Čítanie obsahu priečinka
Rozlíšenie priečinka od súboru
Analýza obsahu priečinka
Vloženie súborov
Delenie značkovania na elementy
Zápis vloženia do premennej
Pripojenie súborov
Jednorázové pripojenie súborov
Zápis pripojenia do premennej
Databázy
Úvod do databáz
PhpMyAdmin
Testovacia tabuľka users
Prípravné manipulácie
Odosielanie dopytov do databázy
Hľadanie chýb v databáze
Testovanie funkčnosti
Problémy s kódovaním
Úplný testovací kód
Získanie výsledku
Získanie výsledku ako poľa
Vytvorenie poľa v cykle
Výber záznamov
Logické operácie
Polia výberu
Vloženie záznamov
Vloženie záznamov pri chýbajúcich stĺpcoch
Aktualizácia záznamov
Odstránenie záznamov
Triedenie záznamov
Obmedzenie množstva
Počítanie množstva
Získanie množstva
Pokročilé dopyty
Organizácia databázy
Prepojenie tabuliek
Získavanie údajov z prepojených tabuliek
Reťaz prepojených tabuliek
Prepojenie cez prepojovaciu tabuľku
Príbuzenské vzťahy
Niekoľko potomkov
Dvojitý vzťah
Praktikum
Prax s databázou
Testovacia tabuľka users
Formátovanie výstupu
Mazanie dát
Prezeranie dát
Pridávanie dát
Editácia dát
Práca s HTTP
Učebnica HTTP
Metóda HTTP požiadavky
Hlavičky HTTP požiadavky
Pole hlavičiek HTTP požiadavky
Hlavičky HTTP odpovede
Problém s hlavičkami HTTP odpovede
Problém s include
Odoslanie štartovacieho riadku HTTP odpovede
Odoslanie stavu HTTP odpovede
Presmerovania
Úvod do presmerovaní
Okamžité presmerovanie
GET požiadavky a presmerovanie
Samopresmerovanie s pridaním parametrov
Flash správy
Pole flash správ
Ukladanie formulárov
Správy o úspešnom odoslaní
Presmerovanie pri validácii formulára
Autentifikácia
Úvod
Autorizácia
Relácie
Odhlásenie z relácie
Registrácia
Autorizácia ihneď po registrácii
Pridanie id do relácie
Skrytie hesla
Kontrola dostupnosti loginu
Validácia
Hashovanie
Pridanie soli do registrácie
Pridanie soli do autorizácie
Funkcia password_hash
Profil
Účet
Zmena hesla
Potvrdenie hesla
Odstránenie účtu
Práva
Registrácia s rozdelením práv
Práva a normalizácia databázy