Platon Technologies
not logged in Login Registration
EnglishSlovak
open source software development celebrating 10 years of open source development! Saturday, October 17, 2026

Diff for platos/open-projekt/2003-phpMyEdit-prihlaska.tex between version 1.1 and 1.2

version 1.1, 2003/06/30 18:57:39 version 1.2, 2003/06/30 21:57:29
Line 9 
Line 9 
 % 03-06-30 - created  % 03-06-30 - created
 %  %
   
 % $Platon: Platon.SK/office/_templates/template.tex,v 1.6 2003/06/29 10:28:04 nepto Exp $  % $Platon: Platon.SK/office/open-projekt/2003-phpMyEdit-prihlaska.tex,v 1.1 2003/06/30 18:57:39 nepto Exp $
   
 \documentclass[a4paper,12pt,oneside]{article}  \documentclass[a4paper,12pt,oneside]{article}
 \usepackage [slovak]{babel}  \usepackage [slovak]{babel}
Line 20 
Line 20 
 oso-bi-tým  oso-bi-tým
 ve-rej-nost-ti  ve-rej-nost-ti
 exi-stu-je  exi-stu-je
   do-te-raj-ší
   umies-tne-ný
   dy-na-mi-cky
   me-cha-ni-zmom
 }% */  }% */
   
 \def\URL#1{\texttt{#1}}  \def\URL#1{\texttt{#1}}
Line 68  e-mail: nepto@platon.sk
Line 72  e-mail: nepto@platon.sk
   
 \subsection*{Zámery a ciele}  \subsection*{Zámery a ciele}
   
   Cieľom je vybudovať programový rámec pre~rýchle a efektívne vytváranie
   internetových aplikácií zaoberajúcich sa manipulovaním s datami
   uloženými v~entitno-relačných SQL databázach. Tento rámec by mal byť
   dostatočne jednoduchý a zrozumiteľný, aby jeho použitie podnecovalo
   začiatočníkov do~tvorivej činnosti, no zároveň by mal byť dosť silný a
   výkonný nato, aby vyhovoval aj kritériam náročnejších používateľov.
   
 \subsection*{Internetové odkazy}  \subsection*{Internetové odkazy}
   
 Domovská stránka projektu \phpMyEdit{} je  Domovská stránka projektu \phpMyEdit{} je
Line 85  dokumentácií a správcu distribučných bal
Line 96  dokumentácií a správcu distribučných bal
                 \URL{http://platon.sk/projects/main\_page.php?project\_id=5}                  \URL{http://platon.sk/projects/main\_page.php?project\_id=5}
 \end{itemize}  \end{itemize}
   
 CVS archívu projektu \phpMyEdit{}  CVS archív projektu \phpMyEdit{}
   
 \begin{itemize}  \begin{itemize}
         \item[] \URL{http://platon.sk/cvs/cvs.php/phpMyEdit/}          \item[] \URL{http://platon.sk/cvs/cvs.php/phpMyEdit/}
Line 130  implementovala aj nové vymoženosti. Použ
Line 141  implementovala aj nové vymoženosti. Použ
 niekoľkonásobne zväčšila. Vďaka niektorým novým príležitostným  niekoľkonásobne zväčšila. Vďaka niektorým novým príležitostným
 prispievateľom sa vdýchol projektu nový život.  prispievateľom sa vdýchol projektu nový život.
   
 V aktuálnej verzii 5.3 prichádza \phpMyEdit{} konečne aj s kompletnou  V~aktuálnej verzii 5.3 prichádza \phpMyEdit{} konečne aj s~kompletnou
 dokumentáciou v~HTML i PDF, ktorú pomohol vytvoriť Doug Hockinson. V  dokumentáciou v~HTML i PDF, ktorú pomohol vytvoriť Doug Hockinson.
 rozsiahlej dokumentácii sú popísané nielen všetky aspekty a črty  V~rozsiahlej dokumentácii sú popísané nielen všetky aspekty a črty
 používania tohto projektu, ale tiež užitočné rady pri tvorbe vlastných  používania tohto projektu, ale tiež užitočné rady pri~tvorbe vlastných
 rozšírení funkcionality či rady pri integrácií vytvorených skriptov do  rozšírení funkcionality či rady pri integrácii vytvorených skriptov
 existujúcich webstránok.  do~existujúcich webstránok.
   
 \subsection*{Detailný popis}  \subsection*{Detailný popis}
   
   Projekt \phpMyEdit{} sa skladá z~dvoch častí, \textit{generovacieho
   skriptu} a \textit{PHP triedy}, pričom druhá nadväzuje na~prvú. Obe
   časti si osobitne popíšeme.
   
   \begin{itemize}
           \item \underline{Generačný skript}
   
                   Použitie generačného skriptu je voliteľné. Existuje len
                   za~účelom zjednodušenia celého procesu stavby aplikácie
                   obsluhujúcej databázovú tabuľku. Extrahované obrazovky
                   generačného skriptu sa nachádzajú v~dokumentácii. Tá vo~svojej
                   druhej kapitole podrobne popisuje celý proces jeho použitia.
   
                   Na~začiatku používateľ prostredníctvom internetového prehliadača
                   dosiahne súbor \texttt{phpMyEditSetup.php}. Privíta ho obrazovka
                   slúžiaca na~prihlásenie sa do~databázy. Po~korektnom vyplnení
                   hodnôt dostane používateľ na~výber zo~zoznamu databáz. Obdobne
                   nasleduje výber zoznamu tabuliek z~príslušnej databázy. Nakoniec
                   používateľ definuje, ktorý stĺpec tabuľky chce používať ako
                   primárny kľúč a všetko je pripravené na~zostavenie
                   \textit{volacieho skriptu}.
   
                   Volací skript je generačným skriptom vygenerovaný PHP kód. Tento
                   kód je umiestnený v~jednom súbore. Generačný skript môže kód
                   zapísať buď     priamo na~disk alebo ho zobraziť vo~výslednej
                   obrazovke procesu generovania. V~tomto prípade je jeho vloženie
                   do~súboru ponechané na~samotného používateľa, čo zvyšuje
                   bezpečnosť celej akcie.
           \newpage
           \item \underline{PHP trieda}
   
                   Uvažujme, že máme vytvorený \textit{volací skript}. Nezáleží
                   na~tom, či bol vytvorený manuálne s~pomocou dokumentácie alebo
                   prostredníctvom generačného skriptu, ktorý bol spomenutý
                   v~predchádzajúcom bode. Volací skript v~sebe musí najskôr
                   obsahovať nastavenie konfiguračných hodnôt, ďalej načítanie PHP
                   triedy a nakoniec vytvorenie a spustenie inštancie tejto triedy.
                   Nadefinované konfiguračné hodnoty sa predávajú ako parametre
                   konštruktoru. V~tejto chvíli sa z~našeho volacieho skriptu stáva
                   PHP aplikácia kompletne obsluhujúca jednu databázovú tabuľku.
                   Pokiaľ sú nutné nejaké modifikácie dosiahnutej funkcionality,
                   stačí zmeniť príslušné konfiguračné hodnoty vo~volacom skripte
                   za~pomoci dokumentácie.
   
                   O~tom ako dosiahnuť konkrétnu funkcionalitu pojednáva podrobná
                   dostupná dokumentácia. My si predstavíme jednotlivé vymoženosti
                   aplikácie bez ukázania konkrétnej konfigurácie. Je teda možné:
   
                   \begin{itemize}
   
                           \item pridávanie, menenie, prezeranie, kopírovanie a mazanie
                                   záznamov
   
                           \item stránkovanie, triedenie a vyhľadávanie v~manipulovanej
                                   tabuľke
   
                           \item náhľady do~iných tabuliek za účelom zobrazenia hodnôt
                                   vo~vyskakovacom menu; týmto spôsobom sú implementované
                                   databázové 1:M väzby, ktoré sú často využívané
   
                           \item nastavenie prístupových práv pre jednotlivé
                                   manipulačné akcie; vo~viacužívateľskom prostredí je
                                   možné a aj vhodné tento parameter nastavovať dynamicky
                                   v~závislosti od~typu užívateľa využívajúceho databázovú
                                   aplikáciu
   
                           \item výber z~viacerých spôsobov navigácie od~klasických
                                   HTML tlačidiel, cez textové odkazy, až po~grafické linky
   
                           \item kontrolovať výstupný dizajn kompletne pomocou
                                   technológie CSS; každý element má definovanú svoju
                                   triedu, pričom je možné elementy vzájomne spájať, ale i
                                   oddeľovať v~rôznych triedach
   
                           \item logovať a zaznamenávať vykonané akcie nad~tabuľkou
                                   do~špeciálnej tabuľky so~zmenami (tzv.~\texttt{changelog}
                                   tabuľka)
   
                           \item používať lokalizované nápisy, nakoľko podpora pre~viac
                                   jazykov je implementovaná; \phpMyEdit{} vo~svojej
                                   poslednej verzii obsahoval 14~jazykových mutácií a ich
                                   počet odvtedy narástol
   
                           \item rozširovať základnú PHP triedu pomocou dedenia, ktoré
                                   je štandardným mechanizmom objektovo-orientovaného
                                   programovania; pokiaľ má používateľ záujem na~osobitnej
                                   funckionalite, je vhodné ju implementovať v~zdedenej
                                   triede, pretože to môže priniesť osoh v~budúcnosti
                                   v~podobe ľahšieho aktualizovania a prechodu na~novú
                                   verziu produktu
   
                           \end{itemize}
   
   \end{itemize}
   
 \subsection*{Sponzori}  \subsection*{Sponzori}
   
 Jediným sponzorom projektu je Doug Hockinson zo~štátu Colorado  Jediným sponzorom projektu je Doug Hockinson zo~štátu Colorado
Line 171  je aktívne používaný aj na~nasledujúcich
Line 277  je aktívne používaný aj na~nasledujúcich
   
 \subsection*{Vývojový plán}  \subsection*{Vývojový plán}
   
   Nové vymoženosti a vlastnosti sú napísané na zozname vecí, ktoré sa
   plánujú urobiť (tzv. TODO list). Zoznam je súčasťou distribučného
   balíka. V~CVS archíve projektu \phpMyEdit{} sa už dokonca nachádzajú aj
   základné špecifikácie týchto úloh. Preferovaná je cesta detailného
   oboznámenia sa s problémom, hĺbkovej a dôslednej analýzy a až nakoniec
   samotnej implementácie. Aj v~minulosti boli nové vymožnenosti
   realizované týmto spôsobom.
   
   
   \begin{itemize}
           \item \underline{Rozšírená podpora pre dátumy a časy}
   
                   Projekt \phpMyEdit{} už v~sebe obsahuje podporu pre~dátumy a
                   časy. V~pláne je však rozšírenie implementácie tejto podpory
                   o~správne narábanie s časmi pred rokom 1970, ďalej o~zadávanie
                   mesiacov alebo dní v~týždni pomocou vyskakovacích menu, ktoré
                   budú obsahovať správne lokalizované textové vyjadrenia týchto
                   elementov a podobne zamerané vlastnosti.
   
           \item \underline{Sofistikované generovacie skripty}
   
                   Počet konfiguračných volieb projektu \phpMyEdit{} je úctihodný.
                   Napriek tomu, že sú všetky detailne popísané v~dokumentácii, je
                   vôla najmä zo~strany užívateľov o~vytvorenie sofistikovaných
                   generovacích skriptov. Tie by mali nahradiť doterajší jednoduchý
                   generovací skript a pomocou nich by malo byť možné
                   prostredníctvom editačných prvkov HTML kompletne nastavovať
                   všetky konfiguračné parametre bez~použitia dokumentácie.
                   Samozrejme, manuálne vytváranie vygenerovaného volacieho skriptu
                   bude aj naďalej možné.
   
           \item \underline{Databázová abstrakcia}
   
                   Čoraz častejšie si uvedomujeme výrazné obmedzenie na~jeden
                   databázový server. Hoci v oblasti webu patrí medzi
                   najpoužívanejšie, existuje niekoľko situácií, kedy je jeho
                   použitie nevhodné. Preto je plánovaná databázová abstrakcia
                   pomocou známych modulov \texttt{PEAR:DB} alebo
                   \texttt{PEAR:MDB}.
   
   \end{itemize}
   
 \subsection*{Zhodnotenie}  \subsection*{Zhodnotenie}
   
   Zmysel projektu \phpMyEdit{} spočíva vo~sprístupnení možnosti
   elegantného tvorenia databázovo orientovaných aplikácii na~webe
   pre~používateľov disponujúcich len základnými alebo až minimálnymi
   vedomosťami programovania v~skriptovacom jazyku PHP. Odozvy, ktoré
   pravidelne dostávame jasne poukazujú na fakt, že aj človek ovládajúci
   len niekoľko nevyhnutných syntaktických čŕt tohto jazyka, je schopný
   vytvoriť jednoduchú databázovú aplikáciu typu telefónny zoznam
   bez~cudzej pomoci. O~to viac nás samozrejme teší, keď sa
   dozvedáme o~skúsených programátoroch, ktorý použili náš projekt
   na~obsluhu niekoľkých desiatok databázových tabuliek alebo na vytvorenie
   komplexného databázového systému pre~stredne veľkú spoločnosť.
   
   Za osobitnú zmienku stojí komunita, ktorá sa okolo produktu \phpMyEdit{}
   vytvorila. Do~projektových diskusných fór pravidelne pribúdajú každý deň
   nové príspevky a odpovede. Neustále sa dozvedáme nové a netradičné
   použitia našej aplikácie. Sme radi, že ľudia si uvedomujú podstatu
   filozofie otvoreného softvéru a prispievajú so~svojími, hoci len malými,
   poznatkami späť do projektu alebo jeho používateľskej základni.
   
 \vfill  \vfill
   
 \scriptsize{Dokument bol vysádzaný systémom~\LaTeX{} pomocou  \scriptsize{Dokument bol vysádzaný systémom~\LaTeX{} pomocou

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.2

Platon Group <platon@platon.org> http://platon.org/
Copyright © 2002-2006 Platon Group
Site powered by Metafox CMS
Go to Top