Dva roky pryč

Školení, která pořádám

Ani jsem si nevšiml, že od spuštění těchto stránek už uplynuly dva roky. Pravidelnost vydávání článků už nebyla tak železná jako první rok, vydávat články každé pondělí, středu a pátek se mi nicméně většinou stále dařilo. O čem jsem psal?

  1. Existuje více možností, jak vymazat záznam
  2. Perlovské regulární výrazy mají od PHP 4.3.3 několik nových vlastností
  3. Někdy je potřeba, aby uživatel nemohl zastavit skript uprostřed jeho běhu
  4. Třeba pro získání jízdních řádů se může hodit schopnost rozebrat cizí formulář
  5. Databázové replikaci nabízí pohodlný způsob zálohování a rozkládání zátěže
  6. Přátelská URL lze automaticky generovat z nadpisu
  7. Při stahování více stránek protokolem HTTP lze využít persistentní připojení
  8. Diskuse na tomto serveru mají vlastní syndikaci
  9. Při ukončení skriptu se provádí několik operací v konkrétním pořadí
  10. Co má být ještě součástí jazyka a co si má programátor raději udělat po svém?
  11. Jaký je rozdíl mezi referencemi a kopírováním hodnot?
  12. Vázání proměnných v MySQLi není zpracováno právě nejšťastněji
  13. Výpis dat ze závislých tabulek není nic složitého
  14. Obrázky se nejsnáze zmenšují funkcí imagecopyresampled
  15. Zkontrolovat datum jde třeba i regulárním výrazem
  16. Neplatné znaky ve formulářích se převádějí na entity
  17. Bezpečné přihlašování uživatelů lze zajistit i s protokolem HTTP
  18. V PHP lze standardními operátory porovnávat i pole
  19. Pro vypsání položek výběrového seznamu se hodí jednoduchá funkce
  20. Z PHP lze pomocí IMAP přistupovat k poště
  21. Datum lze zadat z textového pole, z kalendáře nebo ze skupiny výběrových polí
  22. Cross-Site Request Forgery je často podceňovaný typ útoku na webové aplikace
  23. Rozšíření Filter nabízí jednotný způsob kontroly a ošetření dat
  24. Typ soubory lze určit několika různými způsoby
  25. Školení o bezpečnosti PHP aplikací se líbilo
  26. Uživatele je vhodné po určité době nečinnosti automaticky odhlásit
  27. E-mailovou adresu lze kontrolovat podle tvaru, schopnosti serveru přijímat poštu nebo pokusným doručením zprávy
  28. PHP lze používat i přímo v databázích SQLite a MySQL
  29. Pokud není k dispozici server, dá se vyhledávat v JavaScriptu u klienta
  30. Zend vyvíjí vlastní Framework
  31. Do formuláře je někdy potřeba ve skrytých polích předat to, co přišlo od uživatele
  32. Unikátnost návštěvníka lze kontrolovat podle registrace uživatele, cookie nebo IP adresy
  33. Pokud potřebujeme z URL vyjmout parametr (např. ofset při stránkování), lze použít regulární výraz
  34. Pro zobrazení času se někdy hodí používat relativní hodnoty spíše než absolutní
  35. V květnu 2006 bylo PHP zastoupeno přinejmenším na 36 % domén s koncovkou .cz
  36. Při psaní vlastní databázové abstrakce se hodí funkce pro náhradu placeholderů
  37. Při aktualizaci dat nejde v MySQL používat poddotazy na stejné tabulce
  38. Citlivé informace lze při ukládání šifrovat několika způsoby
  39. Stránky navštěvují i čtenáři bez zájmu o problematiku s účelem něco rychle spíchnout
  40. Jak by dopadly volby při trošku jiných pravidlech počítání hlasů?
  41. Nastavení aplikace můžeme ukládat i do databáze
  42. Přátelské URL lze generovat automaticky, jak však řešit kolize?
  43. Záznam operací lze ukládat do tabulky typu ARCHIVE
  44. Funkce html_entity_decode v PHP 4 nepodporuje vícebajtová kódování
  45. Bitové operace fungují v PHP podobně jako v jiných jazycích
  46. Operátory lze při použití odpovídajícího rozšíření přetěžovat
  47. Borek Bernard se pokusil srovnat PHP a ASP.NET
  48. Pro ochranu formulářů proti spamu se dá použít pole automaticky vyplňované JavaScriptem
  49. Názvy měsíců v datu potřebujeme lokalizované
  50. MySQL podporuje fulltextové vyhledávání
  51. PHP má bitové operace platformově závislé
  52. Stránky lze ukládat do databáze
  53. Opožděné ukládání záznamů využijeme v MySQL asi jen zřídka
  54. Proti HTTP Response Splittingu nás chrání novější verze PHP
  55. Vygenerovat všechny permutace lze rekurzivní funkcí
  56. Jak prohodit dva prvky?
  57. V PHP lze iterovat i znaky
  58. Autorovi článků na tomto serveru lze přispět přes PayPal
  59. Nové prohlížeče umožňují díky standardu OpenSearch integrovat vyhledávače
  60. Hlavní novinkou PHP 5.2 je rozšíření Filter
  61. Pokud chceme v hlavičkách e-mailů používat znaky s diakritikou, musíme je zakódovat
  62. Pevného počtu míst u čísla lze dosáhnout modifikátorem ZEROFILL
  63. Pomocí rozšíření Runkit lze starým funkcím přidat nové parametry
  64. Měřit rychlost jednotlivých částí aplikace lze díky rozšíření APD
  65. Jak vhodně navrhnout indexy ukazuje jednoduchý příklad
  66. Do fotek je někdy potřeba vložit vodotisk nebo ho z nich naopak odstranit
  67. Kromě běžných, unikátních a primárních indexů, se používají také fulltextové, geometrické a cizí klíče
  68. Pokud se bojíme, že ve skriptu zapomeneme inicializovat všechny proměnné, lze vynutit vypnutí register_globals
  69. Pokud potřebujeme kvalitnější náhodná čísla, lze použít soubor /dev/random
  70. Ve funkci mysql_query se na konci příkazu nepíše středník
  71. Spíše než uvádět popisek přímo do formulářového pole je lepší jen navodit stejný dojem
  72. V nahrazovaném řetězci funkce preg_replace mají speciální význam jen znaky \$
  73. PHP 4 a 5 lze zprovoznit na stejném serveru, i když ne zrovna jednoduše
  74. V PHP 6 bude možné použít knihovnu mysqlnd lépe provazující PHP a MySQL
  75. Řadit jde nejen podle názvu sloupce, ale také podle pořadí výrazu za klíčovým slovem SELECT
  76. Jak co nejrychleji zjistit, zda tabulka obsahuje daný text?
  77. Pokud potřebujeme z tabulky získat jednu hodnotu a nemáme jistotu, že tam skutečně je, dá se použít list
  78. V roce 2006 se v PHP pracovalo především na verzi 6
  79. V lednu 2007 bylo PHP nejméně na 45 % domén s koncovkou .cz
  80. Pro zjištění věku z data narození se hodí funkce TIMESTAMPDIFF
  81. Znaky jako mezera nebo tečka se v názvech externích proměnných převádějí na podtržítko
  82. Pokud uživatelé často hledají s překlepy, můžeme jim díky funkci levenshtein nabídnout alternativu
  83. Místo nepřeložených dat se vyplatí ukládat výchozí jazykovou verzi
  84. Březen 2007 je měsícem PHP chyb
  85. Bude uveden produkt Delphi/Vista + PHP
  86. Pokud změny téhož záznamu provádí více uživatelů, je vhodné zjistit, zda se záznam od načtení formuláře změnil
  87. Data do závislých tabulek je nejjednodušší ukládat jejich smazáním a opětovným zapsáním
  88. Pro zobrazení piktogramu webu musíme umět zpracovat ikony
  89. Na hostingu může být zakázaná funkce glob, nabízím její jednodušší verzi
  90. Pokud potřebujeme záznamy řadit podle vlastního kritéria, je vhodné si ve zvláštním sloupci udržovat konzistentní pořadí
  91. Díky knihovně PHPExcel lze data snadno exportovat do formátu Open XML
  92. Měsíc PHP chyb začal dobře známými starými chybami
  93. Překlady všech textů není vhodné ukládat do jedné společné tabulky
  94. PHP nepodporuje syntaxi f()[0]

Pro další psaní samozřejmě uvítám jakékoliv vaše náměty, ať už v diskusi k tomuto článku nebo na můj e-mail.

Jakub Vrána, Ze zákulisí, 7.3.2007, diskuse: 13 (nové: 0)

Diskuse

Michal:

Nedříve slušně poděkuji za všechny články, protože jsou na vysoké úrovni, rád je čtu a občas se k nim vracím.
Moc moc prosím o články, které by se týkaly více návrhu složitějších aplikací. Třeba jakým způsobem řešit verzování, jak efektivně vytvořit datovou strukturu, co je dobré udělat než začnu psát kód atd. Držím Vám palce a přeji hlavně hodně času :)

Tomas:

to jo, to jo, to by se hodilo...at si clovek overi, jestli to dela spravne po svem, nebo jestli to jde delat jeste efektivneji..:)) Do toho, Jakube :)

Jinak blog super, ten cas ale leti, to bych nerekl, ze uz sem zase o 2 roky starsi..:)

ikona dgx:

> co je dobré udělat než začnu psát kód...

Doporučuji pustit si nějakou našlapanou muziku. Nebo alespoň ujetou. Teď jsem celou noc programoval na Zlatých hitech Dalibora Jandy, omylem jsem zaklikl Repeat a uvědomil si toho až ráno ;)

Štěpán Svoboda:

to dgx: myslíš jako

Říkal si hurikááán - kluk jako ty

Motorka vlétla s ním, když dostal smyk

Už měl být s dívkou svou

jak se sešeří

už bylo k lásce prostřeno

na večeři....

Tohle náhodou při programování poslouchám docela často :)

to jakub: připojuji se také k dlouhému zástupu gratulantů a přeji pevné zdraví neb to je nejdůležitější.

ikona finc:

Jedna taková psychologická otázka: Zajímalo by mě, zda podle typu zvolené hudby člověk píše, navrhuje změny a vytváří znovupoužitelný kód jinak.
Možná se to bude lišit u vážné hudby, metalu, popu, punku nebo skacka :)))

Stejné to bude i s pojmenováním, zda konstantu nazvu "KILL_ALL" nebo "LOVE_ALL" :)

ikona dgx:

LOVE_ALL? Tak to už nebude ani tak věcí toho, co člověk při programování poslouchá, jak spíš toho, co při programování hulí :-)

ikona LLook:

A já ještě dodám - muziku, kterou jsem aspoň dva dny neslyšel. Nic nejde proti kreativitě víc než stereotyp, hudbu je třeba měnit. Jeden den třeba Metallica (našlapaná muzika), další den třeba Záviš (ujetá muzika), hlavně ne pořád to samý!

Vesta:

Tak to už dva roky pravidelně čtu tento web :-)

Díky moc za pomoc, vždy když řeším nějaký problém s PHP, tak nejprve jdu sem, pak dokumentace PHP a pak google...

ikona error414:

kvalita se lehce pozna. jen tak dal

Ondrej Podolinský:

Dva roky kvalitních článků za Vámi. Dalších mnoho nás, čtenáře tohoto webu, doufám ještě čeká. Posílám gratulace a držím palce v dalších skvělých článcích:)

Čelo:

Jen tak dál.

ikona Lukáš Mačí:

I já Jakube děkuji za dva roky zajímavého čtení a doufám, že budeš dál pokračovat :)

ikona finc:

Souhlas, stejně jako ostatní, opravdu se jedná o kvalitní web.

Jediné, co bych mohl ... je, že se zaobíráš pouze malými problémy, nikoli návrhy, ale je to dáno asi tím, jak je tento weblog postaven.

Pořád si vzpomínám na to, jak jsi mi v té malé pražské firmě říkal, že programátor musí být liný, čehož se stále držím :)

Jen tak dál, na české scéně neexistuje lepší weblog o PHP.

Diskuse je zrušena z důvodu spamu.

avatar © 2005-2024 Jakub Vrána. Publikované texty můžete přetiskovat pouze se svolením autora. Ukázky kódu smíte používat s uvedením autora a URL tohoto webu bez dalších omezení Creative Commons. Můžeme si tykat. Skripty předpokládají nastavení: magic_quotes_gpc=Off, magic_quotes_runtime=Off, error_reporting=E_ALL & ~E_NOTICE a očekávají předchozí zavolání mysql_set_charset. Skripty by měly být funkční v PHP >= 4.3 a PHP >= 5.0.