PHP
PHP: Jak zjistit, že URL existuje
by LucaS on Dec.08, 2010, under PHP
Nedávno jsem potřeboval ověřovat, zda URL odkazy z mé stránky na jiné opravdu existují. V php manuálu jsem našel jednoduchý způsob jak to zjistit. V php5 je funkce get_headers, které, když podstrčíme nějakou adresu, nebo cestu k souboru, vrátí “hlavičku”. Podle kódu hlavičku pak lze zjistit, zda zdroj opravdu existuje.
Gravatar, vlastní ikonka globálně
by LucaS on Feb.21, 2009, under PHP
Gravatar neboli Global Recognize Avatar. Slovo Avatar je známo především z icq, kde je tak pojmenována Vaše ikonka u přezdívky. Podle obrázku si Vás lidé také pamatují. Gravatar zajistí, aby i Vaše emailová schránka měla svoji tvář.
Narazil jsem na tuto službu docela náhodně, když jsem se snažil přiřadit ikonku ke svým komentářům zde na blogu
Stačí zaregistrovat Váš email na výše uvedené adrese a pomocí dvou kroků vložit obrázek, ze kterého se vytvoří ikonka. Překvapením bylo, že jsem na stránkách nikdy nebyl, a ještě před registrací byla moje emailová adresa, kterou používám při komentování předepsaná. Nezkoumal jsem do hloubky, ale nejspíš nějaký záznam cookies z některého komentáře. Po několika minutách po registraci se Vaše ikonka projeví všude, kde jste kdy komentovali. Samozřejmě na stránkách podporují Gravatary. Jak si ale takovou podporu vytvořit i na svých stránkách?
Bezpečnost. Pár fíglů proti SQL Injection
by LucaS on Feb.06, 2009, under PHP
SQL Injection je druh útoku, který hackeři používají hodně často k získávání citlivých údajů z Vaší databáze. Ať už to jsou přihlašovací jména a hesla, přístup k administrátorskému rozhraní nebo prostě jen k znehodnocení databáze (smazání některých částí apod.). Přitom stačí tak málo. Ošetřit vstupní hodnoty.
Rozhodl jsem se napsat pár řádků na tohle téma. Hodně lidí se mi ptalo na řešení různých situací, ale jakmile se jim podaří spíchnout (naprogramovat) skript, který chtěli, už se nezajímají jak je tento skript bezpečný. Vždy je potřeba řešení podle způsobu použití nějak zabalit.
Upload obrázků speciálně pro Banán
by LucaS on Dec.25, 2008, under PHP
Nedávno jsem psal PHP funkci pro uploadování obrázků na server přes HTTP. Takových funkcí je napsáno na internetu aba kuk, ale při testování na serveru (konkrétně banan.cz) jsem narazil na jednu záludnost. Klíčové ve funkci je to, že obrázky (fotky) ukládá do složek podle dne. Aby nenastala situace, že za rok bude v jedné složce 30 000 a více souborů. Po testování jsem funkci musel přepsat a veškerou komunikaci přenosu udělat pomocí FTP. Důvod nefunkčnosti je pravděpodobně ve zvláštním nastavení Apache nebo v právech pro uživatele. Na “Banánu” nelze přes HTTP a při zapnutém “safe_mode = on” vytvořit složku a nahrát do ní obrázek bez toho, aniž by složka nemusela mít všechna prává (člení i zápis) pro vlastníka, skupinu i ostatní. To je potom velmi snadný cíl útoku (testoval jsem nastavení naposledy 25.12.2008).
(pokračování…)
PHP třída pro připojení k postgreSQL
by LucaS on Dec.21, 2008, under PHP
Nechci zde psát žádný seriál. Takových je na internetu mraky a pokud se někdo chce opravdu učit nějaký programovací nebo skriptovací jazyk, měl by investovat to knížky a rozhodně nešetřit korunou navíc. Nešetřit říkám záměrně, protože mezi chytrými knížkami jsou i ty ostatní s názvem “programátorem za 20 dní…”. Tyto knížky Vám moc nedají. Ani nebudu psát doporučení. Já začal na PHP 3 s knížkou od pana Koska z roku 1999. Pro mě to tehdy byla bible PHP. Škoda, že pan Kosek už nějak zaspal. V této knize je skvělá reference funkcí a tehdy i smysluplné příklady. (pokračování…)
