Štítek Programování ×

Android Apache Ant Chrome CSS Data Databáze Desocializace Download ESRI Facebook Flash GIS Google Google Maps GPS Hardware HTML Internet iOS iPhone Jak na to Javascript jQuery JS mac mapa Maps Mapy Mashup Mobile MySQL Nezařazeno PHP Programování Silverlight Software Studentská tvorba Test Video Všechno možné Webdesign Weblbinky Windows Wordpress Zajímavosti

26. 9. 2006

Webová služba Geo-Names

Webová služba GeoNames je služba, která dokáže přeloži místa podle názvů do zeměpisných souřadnic. Je možné prohledávat celý svět, nebo jednotlivé státy. Myslel jsem, že Česká Republika bude opět černou botou vyhozenou někde na smetišti, ale naštěstí tomu tak není. Služba nalezla i skutečně malé vesničky. Na Všem doporučuji podívat se na popis přístupu ke službě včetně příkladů.

#gis, #programovani
24. 9. 2006

Dvě cesty ke zrychlení PHP skriptů

Čas je relativní :-)Pokoušeli jste se někdy v PHP spustit nějaký časově náročný skript? Třebas stáhnout 90 RSS zdrojů a něco s nimi dělat? Většinou to dopadně pěknou hláškou Maximum execution time of 60 seconds exceeded. (viz. index2.php).

Jak z toho ven? Během svého bádání jsem našel dvě cesty, ta první je řešení převážně u klienta (a je to vlastně takový malý podvod v rychlosti) a ta druhá je řešení na straně serveru.

Takže něco o prvním řešení: (viz. index.php)
Udělal jsem to tak, že jsem si vytvořil v javascriptu pole, do nějž jsem si uložil odkazy na RSS zdroje. Pak jsem zobrazil stránku a pomoci AJAXU jsem se postupně dotazoval na jednotlivé zdroje. Dotazy zpracovávalo jednoduché PHP a výsledky se zobrazují Javascriptem.

Pěkné na tomto řešení je, že se pořád něco děje, alespoň v prohlížeči. Tímto řešením nějaký ten čas naženete, ale v podstatě to taky není žádná sláva. Další nevýhoda je, že zdrojový kód obsahuje pouze javascript, takže zapomeňte na to, že si něco uložíte.

Něco o druhém řešení: (viz. index1.php)
Druhé řešení je zabudováno v PHP5 a sice knihovna CURL. Bohužel tahle knihovna se nějak zvláštně chová pod Windows, četl jsem nějaké řešení, ale moc se jim nechtělo fungovat. Rychlostně to je velmi pěkné, těch 90 zdrojů to zvládne za 7-14 sekund !!! Což je docela síla proti 280 sekundám klasického skriptu (viz index2.php).

Takže na závěr zdrojové kódy time_warp. Jo a abych nezapoměl, pokud někoho napadá lepší řešení budu rád, když mi dá vědět :-) .

#programovani, #webdesign
11. 8. 2006

iCalendar parser v PHP

Napsal jsem v PHP překladač standardu iCal. Tento standard slouží pro sdílení kalendářových dat mezi různými aplikacemi.

Jak to funguje? Události ve Vašem kalendáři jsou ukládána jako textový soubor s definovaným způsobem zápisu hodnot (definice je zde). Tento soubor je možné automatizovaně odesílat pomocí FTP na internet. Tam jej může číst můj parser.

Snažil jsem se jej napsat jednoduše a srozumitelně. Podporován by měl být standard verze 2. Mysím si, že by neměl být problém ani s verzí 3.

Výstupem mého parseru jest klasické pole. Standard iCal podporuje například aplikace Sunbird od Mozilly.

Přesunuto na GitHub: http://github.com/OzzyCzech/icalparser

#programovani, #webdesign
5. 5. 2006

Simple AJAX

Hladal jsem co nejjednodušší způsob jak vyřešit na stránkách AJAX (Co je to AJAX ?).

Podařilo se mi najít Simple AJAX Code-Kit (SACK). Třída SACK napsaná v Javascriptu umožní používat AJAX na stránce tak jednoduše jak to jen jde. Nakonec podívejte se sami jak jednoduše to jde :

function doit()
{
var form = document.getElementById('form');
ajax.setVar("myTextBox", form.mytext.value);
ajax.requestFile = "sackdemo.php";
ajax.method = form.method.value;
ajax.element = 'replaceme';
ajax.onLoading = whenLoading;
ajax.onLoaded = whenLoaded;
ajax.onInteractive = whenInteractive;
ajax.onCompletion = whenCompleted; ajax.runAJAX();
}
#programovani, #webdesign
7. 4. 2006