14 Jan
Ukazała się nowa wersja TYPO3 oznaczona numerem 4.3.1. Jest to pierwsze wydanie w serii 4.3 zawierające poprawki błędów oraz poprawki związane z bezpieczeństwem.
Więcej informacji na stronie projektu TYPO3.
1 Dec

W dniu wczorajszym ukazała się nowa wersja systemu CMS TYPO3 oznaczona numerem 4.3.
Pośród najważniejszych zmian znajdziemy m. in.:
Więcej informacji na stronie projektu.
18 Nov
Do sprzedaży trafił pierwszy numer magazynu poświęconego systemowi CMS o nazwie Typo3. Magazyn nosi tytuł “Magazyn Typo3“. Wydawany jest w wersji elektronicznej i papierowej. Adresowany jest zarówno do początkujących użytkowników systemu jak i do tych bardziej zaawansowanych. Czasopismo zostało podzielone na działy oznaczone zgodnie ze stopniem trudności.
Redaktorem naczelnym pisma został Daniel Ciunkiewicz, dotychczas manager projektów TYPO3, programista, wdrożeniowiec i szkoleniowiec z zakresu funkcjonalności systemu TYPO3, a także felietonista publikujący artykuły w czasopismach i w portalach branżowych. Zespół redakcyjny dwumiesięcznika liczy sześć osób, których wspiera czterech stałych współpracowników.
Na stronie magazynu dostępny jest za darmo do pobrania numer zerowy magazynu. Można także kupić online wydania cyfrowe kolejnych numerów.
Strona magazynu: Magazyn Typo3.
4 Nov
Od jakiegoś czasu wśród moich serwerów pojawił się jeden działający w oparciu Plesk postawiony na Debianie. Generalnie jestem zadowolony z tego rozwiązania, ale oczywiście od czasu do czasu napotykam na różne kwiatki (choć rzadko). Jednym z takich kwiatków okazał się PEAR (choć to nie jego wina, tylko Pleska).
W czym rzecz? Ano w tym, że niby mam PEAR, ale nie działa. Tzn. można instalować pakiety, ale za diabła żaden skrypt PHP nie może uzyskać dostępu do plików PEAR. Próba uruchomienia poniższego skryptu
<?php
require ("PEAR.php");
?>
kończy się tak:
Fatal error: require() [function.require]: Failed opening required ‘PEAR.php’ (include_path=’.:/usr/share/php’) in /var/www/vhosts/domena.com/httpdocs/pear.php on line 2
Zacząłem więc po kolei sprawdzać w czym rzecz. Najpierw odpaliłem phpinfo().
| Directive | Local Value | Master Value |
|---|---|---|
| include_path | .:/usr/share/php | .:/usr/share/php |
| open_basedir | /var/www/vhosts/domena.com/httpdocs:/tmp | /usr/share/php |
include_path
PEAR znajduje się w include_path, czyli w /usr/share/php, więc powinno chodzić. No ale nie chodzi.
open_basedir
No to jesteśmy (prawie) w domu. Nadrzędna wartość open_basedir jest OK – zawiera /usr/share/php, ale LOKALNA już nie – i dlatego nie działa.
Rozwiązanie
Trzeba przygotować sobie plik vhost.conf o zawartości analogicznej do poniższej i wgrać go do katalogu /var/www/vhosts/domena.com/conf/. Jest to jedyne rozwiązanie żeby na trwałe zmienić konfigurację dla wybranego vhosta (bo musimy zmienić LOKALNĄ wartość). Broń Boże wprowadzać zmainy w pliku httpd.include!
<Directory /var/www/vhosts/domena.com/httpdocs>
php_admin_flag safe_mode off
php_admin_value open_basedir "/var/www/vhosts/domena.com/httpdocs:/tmp:/usr/share/php"
</Directory>
Na koniec trzeba powiadomić Pleska o tym, że zmieniła się konfiguracja serwera. Robimy to takim poleceniem:
/usr/local/psa/admin/bin/websrvmng -a
Podobno nie trzeba po tym nawet Apache’a restartować, ale bez tego mi nie działało. Dlatego dorzucamy jeszcze to:
/etc/init.d/apache2 restart
I teraz wszystko pięknie hula!
2 Aug
Aplikacje webowe (głównie ich interfejsy) często-gęsto wykorzystują format JSON np. do pobierania danych do interfejsu użytkownika (np. dane do grida). Jak podaje Wikipedia “JSON (wymawiane jak imię “Jason” — jā’sən), to skrót od “JavaScript Object Notation”. Jest to lekki format wymiany danych komputerowych. JSON ma tą przewagę nad formatem XML, że może być przetworzony w języku JavaScript w łatwy sposób z wykorzystaniem wbudowanej funkcji eval() tego języka.
Pomimo nazwy JSON jest niezależnym od konkretnego języka tekstowym formatem danych. Wiele języków programowania, w tym Perl, C, Python wspierają ten format danych poprzez dodatkowe pakiety bądź biblioteki. Wśród tych języków programowania są ActionScript, C, C#, ColdFusion, E, Java, JavaScript, ML, Objective CAML, Perl, PHP, Python, REBOL oraz Ruby.
JSON jest bardzo przydatny jako format wymiany danych w programowaniu aplikacji opartych o model AJAX. Przykładowo
myObject = eval("return " + json_data);
W typowych przypadkach dane w formacie JSON są pobierane z serwera przy wykorzystaniu obiektu XMLHttpRequest języka JavaScript”.
Można oczywiście samodzielnie przygotowywać po stronie serwera skrypty, które będą nam generowały dane w potrzebnej strukturze, ale po co wyważać otwarte drzwi? Użytkownicy PHP mają tu w zasadzie dwie możliwości zależnie od wersji PHP, na której pracują.
(more…)
27 Jul
Podanie adresu e-mail na stronie jest niekiedy niezbędne. Jednakże naraża to właściciela takiego adresu na to, że jego adres zostanie odnaleziony przez roboty wyszukujące adresy e-mail a w konsekwencji skrzynka zostanie zasypana niechcianą korespondencją, czyli zwyczajnym spamem.
Jak się przed tym zabezpieczyć? W internecie można znaleźć co najmniej kilka rozwiązań tego problemu, różnią się one jednak skutecznością.
9 Dec
Дмитрий Петрович Штефлюк jest ukraińskim programistą wykorzystującym w swej pracy głównie takie technologie, narzędzia i języki jak ASP.NET, C#, VB.NET, PHP, AJAX, Ruby, MySQL. Дмитрий jest także autorem kilku ciekawych i prostych w użyciu pluginów dla systemu szablonów Smarty, rozszerzających jego możliwości o wsparcie dla typowych działań AJAXa.
Adresy: