Internet Centrum upgradovalo na PHP 5.2.0

Freehosting Internet Centrum, na němž hostuji svůj blog, dnes v noci upgradoval PHP na verzi 5.2.0. O této novince jsem dozvěděl nikoliv z tiskové zprávy, ale bohužel díky chybě „Cannot use object of type stdClass as array“, která na mě dnes ráno vybafla z mojí homepage.

Na vině byl špatně napsaný plugin NP_CommentCounter (Nucleus CMS v 3.24), jehož úkolem je číslovat komentáře pod článkem. Naštěstí se jedná o chybu dosti rozšířenou a dobře zdokumentovanou, tudíž i já, laik jsem si s ní snadno poradil:

// před opravou
function event_PreItem($data) {
	$this->curItem = $data['item']['itemid'];
	$this->commentSeq = 0;
}

// po opravě
function event_PreItem($data) {
	$this->curItem = $data['item']->itemid;
	$this->commentSeq = 0;
}

Problém spočívá v chybném přístupu k atributu itemid objektu typu stdClass (více zde).


Podělte se o tento článek s ostatními… Sdílet

Jak obnovit staré přístupové heslo do SAPu

SAP logo

V administraci SAPu lze nastavit, aby byl uživatel po určité době vyzván ke změně svého přístupového hesla. Máte-li tuto volbu u vás ve firmě aktivovánu a zároveň se musíte přihlašovat do několika systémů (já například pracuji na šesti systémech), brzy vám začne z tolika hesel jít hlava kolem. Aby to chudák uživatel neměl tak snadné a nemohl se jednoduše vrátit k původnímu heslu, platí pravidlo, že heslo lze měnit pouze jednou denně a musí se lišit od pěti posledních hesel.

Ideálním řešením by samozřejmě bylo toto bezpečností opatření vypnout (alespoň do té doby, než zaklepe na dveře bezpečnostní audit ). Pokud však tuto možnost nemáte, třeba se vám bude hodit malý trik, jak zresetovat přihlašovací údaje tak, aby vám SAP umožnil vrátit se k libovolnému předchozímu heslu.

1. Změna hesla v SAPu ver. 4.6

Vaše aktuální přístupové heslo (pole BCODE) ve formě MD5 otisku i posledních pět předešlých hesel je uloženo v tabulce USR02 (klíčem tabulky je uživatelské jméno - pole BNAME). K ošálení systému vám postačí smazat jednak stará hesla (jedná se o pole OCOD1, OCOD2OCOD5), jednak datum poslední změny hesla (pole BCDA1).

2. Změna hesla v SAPu ver. 6

Od SAPu verze 6 je to maličko složitější. Aktuální heslo (pole PASSCODE; tentokrát zakódováno pomocí SHA1) a datum poslední změny hesla se opět nachází v tabulce USR02. Zde tedy stačí vymazat pole PWDCHGDATE obsahující datum poslední změny hesla. Stará hesla se nám však přestěhovala do tabulky USRPWDHISTORY, v níž je třeba smazat všechny záznamy k vašemu uživatelskému jménu.

Potom vám již nic nebrání ve výběru nového hesla dle libosti.

Na závěr ještě drobnost - prográmek na editaci databázových tabulek. Ať se dílo daří!


Podělte se o tento článek s ostatními… Sdílet

Systémové funkce pro práci se soubory v ABAPu

SAP logo

Existují dvě základní operace se soubory, které běžný ABAP programátor potřebuje realizovat ze všeho nejčastěji. Jedná se o:

  1. uložení souboru (download)
  2. načtení souboru (upload)

K tomu má v SAPu k dispozici dvě systémové funkce ze známe funkční skupiny (function group) SFES.

1. Uložení souboru postaru

K uložení souboru slouží funkční modul GUI_DOWNLOAD, jehož nejdůležitějšími parametry jsou:

  • filename - název soubor, který je ukládán, včetně cesty
  • filetype - typ souboru určující znakovou sadu (BIN, DBF, WK1, ASC, VSS)
  • append - pokud je parametr nastaven na hodnotu "X" (abap_true) a soubor s názvem filename již existuje, pak jsou data přidána na konec tohoto souboru
  • data_tab - interní tabulka, jejíž data budou uložena do souboru; jednotlivá pole (sloupce) budou oddělena tabulátory
  • fieldnames - interní tabulka obsahující názvy jednotlivých sloupců, respektive hlavičku, která bude zapsána do souboru jako první řádek
  • filelength - importní parametr, ze kterého lze zjistit velikost souboru

Podělte se o tento článek s ostatními… Sdílet

On-line herna

Napadlo mě, že bych mohl oprášit jeden ze svých starších projektů a třeba tím někoho pobavit. V dnešní době nejrůznějších flashovek to asi nemá příliš velkou hodnotu, ale přesto…

Moje JavaScriptové hry si můžete zahrát na této adrese:
http://herna.jaros.in/ Externí link

Doplněno: Jednotlivé hry si můžete stáhnout odsud:

Stáhnout Puzzle Themes Stáhnout     Spustit Externí link
Stáhnout Milionáře Stáhnout Spustit Externí link
Stáhnout Mariáš Stáhnout Spustit Externí link
Stáhnout Piškovorky Stáhnout Spustit Externí link

Podělte se o tento článek s ostatními… Sdílet

Nový ABAP editor a komentáře

Jak známo jazyk ABAP nemá víceřádkové komentáře (tedy něco jako /* … */) a proto by bylo pěkně otravné zapisovat před každý řádek symbol abapovského komentáře (tedy hvězdičku *). Naštěstí existuje v ABAP editoru příkaz pro hromadné zakomentování a odkomentování vybraných řádků. Myslím, že o jeho užitečnosti není pochyb. Tuto funkci bylo možné vždy pohotově vyvolat stiskem klávesových zkratek Ctrl + < pro zakomentování, respektive Ctrl + > pro odkomentování řádků.

Co čert nechtěl, s novou verzí ABAP editoru přišly i nové klávesové zkratky pro práci s komentáři (Ctrl + \ a Ctrl + Shift + \ ), které mi ale zrovna dvakrát nevyhovují. Naštěstí existuje jednoduché řešení jak si nadefinovat klávesy původní (nebo libovolné jiné).

Komentáře v ABAP editoru
[kliněte na obrázek pro zobrazení v plné velikosti]

To je jedna z mnoha věcí, které se mi na novém editoru moc líbí - téměř vše si můžete nastavit tak, jak vám to nejlépe vyhovuje. O jeho dalších přínosech se rozepíšu třeba někdy příště.


Podělte se o tento článek s ostatními… Sdílet

Programátorské historky

Programátor

(velmi volně přeloženo z anglického originálu Programming Language Stories - Příběhy o programovacích jazycích)

Příběh první - C

Chlapík potřebuje postavit boudu pro psa a tak si na práci najme řemeslníka. Stavitel, který je zároveň programátorem v jazyku C, mu navrhne, že místo obyčejné dřevěné boudy postaví boudu z cihel, která bude daleko kvalitnější a vydrží navěky. Klient je nejprve nedůvěřivý, ale zedníkovy argumenty zní velmi přesvědčivě, takže nakonec souhlasí.

Práce na stavbě boudy trvá celou věčnost - pokaždé, když už se zdá být bouda hotová, objeví se nová skulinka (leak) mezi cihlami, kterou je potřeba utěsnit. Na rozdíl od stavby ze dřeva, kde stačí chybně změřené prkno pouze vhodně seříznout, u cihlové stavby je nutné vše předem důkladně promyslet a rozvrhnout.

Rok se s rokem sejde a bouda je konečně hotová. Klient zaplatí dohodnutou odměnu a zedník je už téměř na odchodu. Na chvíli se však zamyslí a povídá: „Zaplatil jste paletu cihel a já jsem na stavbu použil všechny, ale jedna cihla zbyla. Byla by škoda kdyby přišla na zmar.“ Než se zákazník stačí vzpamatovat, už se zedníkem uzavírá novou zakázku na stavbu cihlové cesty od domku k boudě. Zedník přiobjedná další cihly potřebné k vybudování cesty a ihned se pouští do práce, která mu jde tentokrát poněkud lépe od ruky.


Podělte se o tento článek s ostatními… Sdílet

Google custom search nebo vestavěné vyhledávání?

Jaké zvolit vyhledávání na weblogu? To vestavěné, které je součástí vašeho CMS (redakčního systému) nebo vyhledávání pomocí uživatelsky definovaného vyhledávače Googlu? Obě řešení mají svá pro a proti:

1. Google custom search

Ve prospěch Googlu hovoří kvalitní vyhledávací engine, který umí skloňovat a časovat. V případě překlepu uživatele upozorní a nabídne správné heslo. Navíc se prakticky neustále vyvíjí, takže co do kvality nalezených výsledků mu standardní integrované CMS vyhledávání nemůže konkurovat.

Jak takové vyhledávání zprovoznit? Stačí si jen vygenerovat kód na stránkách Googlu a vložit jej do příslušné šablony blogu. Je možné též zvolit, zda se výsledky vyhledávání budou zobrazovat standardně na stránce generované Googlem (tak, jak to mám řešeno já) nebo v iframu zapsaným do vlastní stránky pomocí JavaScriptu (tak, jak to má např. Radek Hulán). Druhá varianta není vhodná z důvodu přístupnosti webu (nefunguje pokud má uživatel vypnutý JS)

Jediný problém spatřuji v aktuálnosti výsledků vyhledávání. Trvá totiž nějakou dobu, než Google zaindexuje nově přidané články a to i v případě, že Googlu pravidelně předhazujete aktualizovanou mapu webu.


Podělte se o tento článek s ostatními… Sdílet

Skinování je v módě

Seznam.cz v rámci svého faceliftu přišel mimo jiné také s kompletní skinovatelností. Centrum.cz samozřejmě nechtělo zůstat pozadu a ihned se pokusilo nabídnout svým uživatelům něco podobného (ačkoliv když dva dělají totéž, není to totéž).

A ani já nechci zůstat stranou módních trendů, proto jsem se rozhodl pro menší obměnu vzhledu Sektoru PJ. Jak se Vám líbí nebeská modř?


Podělte se o tento článek s ostatními… Sdílet

© Pavel Jaroš [Sektor PJ] · Nahoru Nahoru