PHP

Tuto kategorii jsem původně založil za účelem podělit se o hotová řešení, která by jiní museli složitě vymýšlet. Postupem času ale začaly přibývat různé další tipy a návody. Nyní sem budu publikovat články reflektující nově nabyté profesní znalosti a zkušenosti získané samostudiem.

PHP: Základy

PHP: Základy

Návody, tipy, triky, vše pochopitelné i pro začátečníka. Hotová řešení přímo ke stažení.

PHP pro pokročilé

PHP pro pokročilé

Objekty, náročnější funkce a postupy, databázové vzory a ladění aplikací.

PHP Třída na detekci zařízení

PHP Třída na detekci zařízení

V sérii předchozích článků na téma YouTube videa jsem několikrát referoval na správnou detekci zařízení. Nic totiž nelze cílit se stoprocentní přesností jenom pomocí @media query, proto je dobré nasadit na responzivní weby i silnější kalibr. Tím samozřejmě myslím PHP knihovnu, která správně určí vstupní zařízení, na kterém se momentálně uživatel nachází. A jedno takové řešení vám dnes představím.

Než jsem našel tu správnou knihovnu, strávil jsem nějaký čas na Googlu. Nakonec se ukázalo, že žádná jiná pořádně ani neexistuje. Tedy pokud chceme kvalitní produkt, jehož vývoj stále pokračuje. Autor knihovnu průběžně aktualizuje, což je v případě detekce zařízení nejdůležitější aspekt. Dovolte mi, abych vám představil Mobile Detect Library.

Celý článek

Návštěvní kniha v PHP s reakcí na příspěvky

Návštěvní kniha v PHP s reakcí na příspěvky

Také v novém roce bych rád pokračoval s články v oboru. Mám tu ještě nějaké resty u starších textů, které potřebují revizi. Návštěvní kniha v PHP a MySQL s reakcí na příspěvky byla velmi navštěvovaným článkem, a tak je více než vhodné ji malinko předělat. Začaly se mi tu množit dotazy, proč to nyní nefunguje... Knížku jsem totiž psal v době, kdy PHP5 rozhodně nebylo samozřejmostí. Bylo potřeba dodržovat nějakou zpětnou kompatibilitu, která už je ale v tuto chvíli bezpředmětná. Celou miniaplikaci jsem tedy aktualizoval a stejně jako naposledy si i dnes ukážeme, jak ji rozběhnout na vlastním webu. Také si projdeme některé nové funkce a vychytávky, které jsem zachoval, přidal či zrušil.

Celý článek

Formuláře v PHP - ošetření odesílaných dat: díl II

Formuláře v PHP - ošetření odesílaných dat: díl II

Další z článků, který po letech potřebuje oprášit jsou Formuláře v PHP - ošetření odesílaných dat. Byť samotné kontroly zůstávají pořád stejné, způsob jejich realizace se po letech vyvinul. Dříve jsme zobrazovali chybová hlášení všechna po kupě někde nad formulářem, pomocí JavaScriptového alertu nebo v případě začátečnické realizace samostatně na externí stránce. Dnes uživatelé vyžadují větší pohodlí a intuitivnější chování webových aplikací, a tak zobrazujeme chybová hlášení většinou hned vedle daného políčka. Jak jsem už ale zmínil, princip kontrol není třeba měnit. Článek "Je čas udělat Wordpressu pápá" se datuje na 1. 10. 2007, tehdy jsem přešel na vlastní redakční systém, kde používám úplně stejné kontroly v komentářích. A od té doby jsem nezaznamenal jediný spam - tedy spam od neživého návštěvníka. Základní prvky ochrany tedy fungují stále dobře a je na čase si je připomenout.

Celý článek

Objekty v PHP5 - Skládání objektů, abstrakce a dědičnost

Objekty v PHP5 - Skládání objektů, abstrakce a dědičnost

V dnešním článku si povíme něco víc o objektech, a to konkrétně o skládání objektů, dědičnosti, abstrakci a samozřejmě i viditelnosti, jejíž znalost je k výše uvedeným technikám nezbytná. Na první pohled se může zdát o složité termíny, ale jejich samotné použití nijak náročné není. Mnohem složitější je správné použití. Nepřidávat dědičnost jen proto, abychom ukázali, že ji umíme, nenaplácat všechna klíčová slova do jedné třídy jenom aby tam byly. To je také hlavní důvod, proč píšu samostatný text, důvod, proč nemohu vše demonstrovat na své databázové třídě.

Celý článek

Návrh databázové třídy - díl VI - Závěr

Návrh databázové třídy - díl VI - Závěr

Šestým dílem bych rád uzavřel svůj seriál o databázové třídě a úvod do objektového programování v PHP5. Ukázali jsme si středně složitou třídu s obsluhou většiny typů SQL dotazů, které využijeme pro projekt průměrné náročnosti. Kromě naprosto základních funkcí jako ošetření SQL dotazů proti SQL injection umí i jednoduché logování, export databáze buď do souboru nebo přímo do force downloadu i vlastní obsluhu chyb. Posílání chyb na e-mail zde ale obsažené není: na notifikační e-maily mám třídu další, o které si můžeme povědět v jiném článku. Nesmím také vynechat možnost připojení k více databázím v rámci jednoho projektu: i to class Db zvládne. Tak hurá na rekapitulaci.

Celý článek

Návrh databázové třídy - díl V - Logování změn

Návrh databázové třídy - díl V - Logování změn

V dalším pokračování seriálu o objektovém programování v PHP si ukážeme, jak přidat do ukázkové třídy DB logování konkrétních SQL dotazů. Rozebereme si tedy znovu metody na insert, update a delete, které rozšíříme o další zápis do nové tabulky, kam budeme ukládat informace o provedených změnách. Nejdřív ale krátká rekapitulace. Soubor článků o objektech v PHP jsem začal psát už poměrně dávno, ještě před pauzou v blogování. Jelikož jsem měl ale na články vcelku pozitivní ohlasy, byla by asi škoda seriál nedokončit, byť opožděně.

Celý článek

Návrh databázové třídy - díl IV: Export databáze

Návrh databázové třídy - díl IV: Export databáze

Dnešní pokračování pohádky o databázové třídě si vezme pod lupu pár konkrétních metod. Půjde o funkce na export celé databáze s možností force download nebo postupného ukládání do souboru. O možnostech exportu databáze moc článků napsáno nebylo, navíc se nejedná o úplně triviální algoritmus s pár vnořenými cykly. V následujícím článku vám předvedu, jak problém vyřešit s elegancí.

Celý článek

Návrh databázové třídy - díl III: class Query

Návrh databázové třídy - díl III: class Query

V minulém dílu seriálu o objektech v PHP5 a živém příkladu v podobě databázové třídy jsme si ukázali základní metody na typové SQL dotazů. Každá z těchto metod skončila vytvořením instance třídy Query, respektive zavoláním některé její metody. Jak to všechno funguje uvnitř třídy Query bude tématem tohoto článku. Krátce ještě zopakuji, co vše už máme: jsou to základní metody třídy Db pro volání SQL dotazů: SELECTUPDATEINSERTDELETE. Hodnoty, které nás zajímají při změně či odstranění řádků tabulky už máme přímo v návratových hodnotách jednotlivých metod. Co ale ještě hotové nemáme, je zpracování klasického výběru dat z databáze.

Celý článek

Návrh databázové třídy - díl II: Základní metody

Návrh databázové třídy - díl II: Základní metody

V úvodu svého seriálu o databázi a objektech jsem nakousnul základní témata, kterými bude směřovat postup realizace. V pokračování uvedu elementární metody na nečastější typy SQL dotazů. Naším cílem bude již zmiňované omezení otravných operací spolu s maximálním zjednodušení zápisů konkrétních typů dotazů. Nepodstatný výčet členských proměnných přeskočím a přejdu rovnou ke konstruktoru třídy.

Celý článek

Návrh databázové třídy - díl I: Úvod, cíle

Návrh databázové třídy - díl I: Úvod, cíle

Jaro už je pomalu za dveřmi, je nejvyšší čas pustit se do objektů. Jako učební pomůcku jsem zvolil právě databázový layer, jelikož na jeho návrhu a tvorbě se dá mnohé ukázat i vysvětlit, o využití v praxi nemluvě. Sám jsem začínal zprvu jednoduchým podnětem: potřebou monitorovat a sčítat provedené SQL dotazy. Skutečný život se ale následně ukázal mnohem složitější, a tak bylo potřeba napsat pokročilou knihovnu, která toho co nejvíce udělá za mě. Proto nyní otevírám miniseriál tak trochu o objektech a tak trochu o návrhových vzorech.

Celý článek

1 |

Parak simati, Muballit mitte, Nergal allatu mellamu mesaru, La tapallah Annuaki, Kettu Puluthu qillatua