Databáze kontaktů v PHP 5.
Vítejte u posledního dílu této minisérie, ve kterém doplním aplikaci o možnosti hledání v seznamu osob, jejich mazání a zobrazení detailu. A samozřejmě si budete moci stáhnout kompletní zdrojové texty celé aplikace.
Velká část tohoto dílu je podobná dílu předchozímu, proto se soustředím hlavně na porovnání rozdílů. Ten největší, kromě toho, že se hledají osoby a ne firmy, spočívá v SQL dotazu. Ten v tomto případě zasahuje přes dvě tabulky a musí vybrat záznamy o hledaných osobách. Je nutné myslet na to, že člověk nemusí být zařazen v žádné firmě.
Ale hezky od začátku. Jelikož vždy bude potřeba seznam firem, načteme si ho hned na začátku:
|
Dále se nastaví velikost vyčítané stránky, používám 10, je to jednak hezké kulaté číslo a jednak je to akorát tak na obrazovku. Potom se ve skriptu zjistí, zda je nastavena nějaká aktuální stránka výpisu, pokud ne, nastaví se proměnná $cPage na 0 a vypočítá se aktuální pozice kurzoru v databázi. Následně se provede kontrola, zda byl odeslán formulář do stránky, byť i prázdný. To je bráno jako požadavek na kompletní výpis. Skript provádí tuto kontrolu na $Prijmeni pomocí PHP funkce isset. Ta kontroluje, jestli je proměnná vytvořena, ne však její obsah. Pokud je do parametrů vyhledávání zahrnuta i firma, dojde k rozšíření SQL dotazu o patřičnou podmínku.
|
Po proběhnutí SQL dotazu se do proměnné $maxRecs uloží počet záznamů jím vrácených. Následně proběhne kontrola, zda je skript na konci seznamu. Provede to opět pomocí ternárních operátorů. V dalším kroku dojde k sebeobraně :) vůči nenechavým uživatelům, kteří rádi přepisují adresní řádku. Pokud skript zjistí, že je mimo rozsah, vybere poslední stránku dat a nastaví si na ni potřebné ukazatele. Pokud ne, pouze se přesune kurzor v databázi na 1. záznam, který se bude načítat. Následně proběhne smyčka, která načte do pole $Vysledky požadovaná data. Tato smyčka má délku buď do konce RS nebo <$PageSize.
|
Dále už následuje vytvoření formuláře pro vyhledávání a výpis výsledků hledání. Obojí je obdobou zobrazování jako v minulém díle. I zde jsou u vyhledané položky tři ikonky sloužící pro zobrazení detailu, úpravy záznamu a smazání položky. Jejich význam i funkčnost nedoznaly změn.
A to je úplně vše, stáhněte si ještě všechny zdrojové soubory této aplikace.
Starší komentáře ke článku
Pokud máte zájem o starší komentáře k tomuto článku, naleznete je zde.
Mohlo by vás také zajímat
-
OpenAI představilo novou funkci ChatGPT Search
6. listopadu 2024 -
Proč investovat do nejvýkonnějších VPS s AMD EPYC procesory
14. června 2024 -
Webdesign: Jak optimalizovat tlačítka na webu
7. března 2024
Nejnovější
-
Apple jde naproti práci s HDR monitory!
17. ledna 2025 -
Jak využít AI potenciál svého Macu?
9. ledna 2025 -
NIS2: Verifikace údajů vlastníků domén
6. ledna 2025 -
Dostali jste k vánocům PC? Využijte jeho AI potenciál!
3. ledna 2025
zdeny
Pro 5, 2009 v 23:31Dobrý den, vaše databáze kontaktů mě velmi zaujala, bohužel mám s ní jeden problém, na vlastním pc mi vše funguje skvěle, nahrajuli ovšem vše na web a s provozním databázi, tak se při ukládání firem uloží vždy jen prázdné hodnoty, u ukládání osob se vždy objeví hláška neexistující kontakt.
Anonym
Dub 13, 2010 v 23:19Zřejmě máte na serveru zakázané Register_Globals. Tato aplikace funguje korektně pouze při Register_Globals On. Což může být pro server nevhodné z hlediska bezpečnosti. U některých hostingů to lze nastavit pomocí vloženého souboru .htacess, u některých /spíše většiny/ Vám to musí udělat admin serveru. V současné době pracuji na úpravě této aplikace schopné pracovat pod Register_Globals Off.
Jenda
Dub 13, 2010 v 23:28Ještě dodatek: Nedávno se mi povedlo nahradit otravné vkládání volání DB do většiny souborů souborem jedním, volaným pak pomocí rutiny include, jak je v civilizovaném světe zvykem. Hodně to pomáhá zejména při ladění a přechodu z lokálu na ostrý server. Kdy se mění jen jeden soubor. Též jsem aplikaci doplnil admin rozhraním s dvěma úrovněmi Správce a Admin. Běžný user už nemůže v seznamu měnit a mazat údaje.
Sorry, v minulém příspěvku jsem se nepodepsal.
blaaablaaa
Dub 14, 2010 v 15:05Jenda:
v civilizovanem svete je zvykem si do souboru ulozit pouze prihlasovaci udaje ;)
Zdeny
Srp 10, 2010 v 18:15Dobrý den, už jste aplikaci upravili? Zkouším upravit proměnné, ale ne zrovna moc se mi to zatím daří :).
Michal V.
Led 15, 2011 v 10:13Dobrý den, chci se zeptat, existuje již upravená verze, která funguje pod Register_Globals Off? Předem děkuji, Michal V.
Dusan
Led 21, 2011 v 8:34Dobry den. Zajimalo by me jak mate upravenu aplikaci pro pouziti promenne Register_Globals Off pripadne viceurvnovy pristup. dekuji
Michal V.
Led 21, 2011 v 16:14Zajímalo by o i mne, celkem by se mi hodila
JJ
Říj 26, 2011 v 14:09nemate nekde upravene na ty register-globals off?