maj
30
2011
Pojawiła się potrzeba pobrania kilku galerii z serwera do którego niestety nie miałem dostępu. Szczęście, w nieszczęściu, że pliki nazywane były według jakiegoś schematu. Toporna pętlai wget delikatnie pomogły zaoszczędzić chwilkę. Można było oczywiście dwie zmienne wrzucić w parametr wywołania, ale jakoś zabrakło czasu.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
| #!/bin/bash
katalog="28"
przedrostek="ognisko"
ext="jpg"
adres="http://www.staryadres.pl/I/$katalog"
for i in {1..9}
do
wget $adres/$przedrostek"0"$i.$ext
# przykład: http://www.staryadres.pl/I/28/ognisko05.jpg
wget $adres/$przedrostek$i.$ext
# przykład: http://www.staryadres.pl/I/28/ognisko5.jpg
# wget dostając kod 404 nie tworzy żadnego pliku
done
for i in {10..40}
# Zdjęć na szczęście w pojedynczych galeriach nie było więcej jak 40.
do
wget $adres/$przedrostek$i.$ext
# przykład: http://www.staryadres.pl/I/28/ognisko10.jpg
done
rm *.1
# Testowałem skrypt i porobiły się duplikaty,
# niepotrzebne rzeczy więc wyrzucamy. |
1 comment | posted in Admin Zone, Web Development
maj
27
2011
Szybkie i sprawne przekierowania w przypadku nowej domeny, nowego adresu. Wybrać Meta Refresh czy 301 . Odpowiedź jest raczej oczywista. Tylko i wyłącznie przekierowanie 301.
- http://staryadres.pl -> http://www.konopnickiej.com
- http://www.staryadres.pl -> http://www.konopnickiej.com
Dwa sposoby
PHP:
1
2
3
4
| <?php
Header( "HTTP/1.1 301 Moved Permanently" );
Header( "Location: http://www.konopnickiej.com" );
// bez znaku zamykającego "?>", nie jest wymagany, a wręcz zalecanie jest jego pominięcie |
.htaccess
1
2
3
| Options +FollowSymLinks
RewriteEngine on
RewriteRule (.*) http://www.konopnickiej.com/ [R=301,L] |
.htaccess (z przekierowaniem pełnego adresu URL)
Przykład:
http://www.staryadres.pl/kontakt/ -> http://www.konopnickiej.com/kontakt/
1
2
3
| Options +FollowSymLinks
RewriteEngine on
RewriteRule (.*) http://www.konopnickiej.com/$1 [R=301,L] |
1 comment | tags: 301, meta refreash, php, redirection | posted in Admin Zone, Web Development
cze
10
2009
Wczoraj udostępniona została najnowsza wersja przeglądarki internetowej firmy Apple. Na codzień używam Linux’a, nie jest mi dane, doświadczać przyjemności jej używania. Na krótki okres, przesiadłem się więc do pożyczonego laptopa, na którym po chwilli, pojawiło się logo z niebieskim kompasem.
Pierwsze wrażenie jest pozytywne. Prawy górny róg okna przypomina Google Chrome, są tam dwie ikony z wysuwanymi menu, odpowiedzialne za dostęp do podstawowych funkcji programu. Są nimi tworzenie nowych okien, zakładek, dostęp do ustawień, włączenie trybu przeglądania prywatnego (na komputerze nie są zapisywane ciasteczka (cookies), historie przeglądanych stron, hasła itd. Wszystko jest usuwane automatycznie, zaraz po zakończeniu używania aplikacji). Po lewej stronie, znajdują się dwa przyciski. Jeden otwieraja widok zakładek (prezentujący w bardzo efektowny i dynamiczny sposób historię stron, strony z paska zakładek, źródła RSS, oraz zaimportowane zakładki z innych przeglądarek) oraz TopSites (najczęściej odwiedzane strony, które prezentowane są na zaokrąglonym ekranie, porównał bym to z projekcją w dobrym kinie). Wszystko to robi naprawdę świetne wrażenie.

Safari 4 TopSites

Safari 4 - Historia przeglądanych stron
Safari 4 używa silnika WebKit (współny projekt ludzi z Apple, Google, Qt Software, Collabora, Torch Mobile oraz kilku niezależnych ochotników). Używając nowego silnika Nitro (Nitro Engine), skrypty JavaScript wykonywane są prawie 8 razy szybciej niż w Internet Explorer 8 (nie wspominając o IE 7
), 4 razy szybciej niż Firefox 3, oraz nieznacznie szybciej niż Google Chrome (dane te bazują na testach iBench oraz SunSpider)
Nie wiem czy określenie Safari jako najszybszej przeglądarki jest słuszne, ale mimo wszystko zdaje ona swój egzamin. Pracuję na wielu przeglądarkach, na różnych systemach i mogę z czystym sumieniem stwierdzić że działa ona bardzo przyzwoicie.
Poniżej prezentuję kilka faktów:
- Test Acid3 – zdany 100/100 (jako pierwsza przeglądarka, na tą chwilę test przechodzi też Google Chrome)
- W pełni obsługuje standardy – HTML 5, CSS 3 (jako pierwsza przeglądarka na świecie)
- Silnik Nitro JavaScript – zwalający konkurencję z nóg, prześcignął nawet nieznacznie Google Chrome (wspieram się testami Apple, ale gdy zrobiłem test pomiędzy Google Chrome 2 a Safari 4
- Patrz zanim klikniesz (Look before you click) – czyli wspomniany już wcześniej, sposób przeglądania historii, zakładek, najpopularniejszych stron
- Wbudowane narzędzia dla Webmasterów
- Wbudowany czytnik RSS
- Przeglądanie prywatne (na komputerze nie są zapisywane żadne informacje), ponownie Google Chrome ma tryb Incognito
- Safari AdBlock, precz z reklamami (plugin który trzeba zainstalować)
- wiele, wiele innych nowości o których poczytać można na stronie producenta

Safari 3D
Z tego wszystkiego , nie rozumiem braku popularności tego wspaniałego produktu. Jako posiadacz Linuxa, żałuję tylko iż nie ma wersji dla tego systemu (Wine mnie nie satysfakcjonuje).
Odnośniki:
6 comments | tags: Apple, przeglądarka, Safari | posted in Admin Zone, Web Development, Wiadomości
cze
1
2009

Google Waves
Brakuje mi czasu aby bardziej szczegółowo opisać nowy produkt Google. Jest on rozwijany przez twórców Google Maps, braci Larsa i Jensa Rasmussen’ów. Pisząc jednym zdaniem, ma to być technologia komunikacji i współpracy w sieci która połączyć ma e-maile i komunikatory w jedną, zwartą, interaktywną całość. Wszystko z poziomu przeglądarki. Po więcej informacji zapraszam na strony związane z tą nową technologią, którą na pewno się zainteresuję i szczegółowo opiszę. Szczególnie polecam film w którym autorzy prezentują czym jest Google Wave.
Odnośniki:
16 comments | tags: fale, Google, Google Wave, wave, waves | posted in Web Development, Wiadomości
maj
29
2009
Dwa dni temu została wypuszczona wersja Zend Framework o numerze 1.8.2. Jest to już druga opublikowana wersja w serii 1.8. Skupiono się w niej nad poprawkami w klasach Zend_Db oraz Zend_Loader_Autoloader (która została pierwszy raz umieszczona w wersji 1.8.0). W tym wydaniu poprawiono ponad 50 zgłoszonych błędów.
Strona: Zend Framework
Lista zmian: http://framework.zend.com/changelog/1.8.2
no comments | tags: Web Development, Zend Framework | posted in Web Development
maj
12
2009
Szybko potrzebowałem zmienić rozmiar wielu plików na serwerze, ale tylko tych większych niż 700px. Po chwili poszukiwań znalazłem problem udało się rozwiązać:
# apt-get install imagemagick
# mogrify -resize 700> *.jpg
Tutaj mały wyciąg z dokumentacji ImageMagick:
Only Shrink Larger Images (‘>‘ flag)
Another commonly used option is to restrict IM so that it will only shrink images to fit into the size given. Never enlarge. This is the ‘>‘ resize option. Think of it only applying the resize to images ‘greater than’ the size given (its a little counter intuitive).
no comments | tags: ImageMagick, Linux, Wordpress | posted in Admin Zone, Web Development
maj
5
2009

1
2
| Notice: Zend_Loader::Zend_Loader::registerAutoload is deprecated as of 1.8.0 and will be removed with 2.0.0; use Zend_Loader_Autoloader instead in /usr/share/php/Zend/Loader.php on line 207
Notice: Zend_Loader::Zend_Loader::autoload is deprecated as of 1.8.0 and will be removed with 2.0.0; use Zend_Loader_Autoloader instead in /usr/share/php/Zend/Loader.php on line 186 |
A to pierwsze ostrzeżenie które pojawiło sie zaraz po załadowaniu nowego framework’a. Jak już pisałem w poprzednim newsie, w większości wypadków wystarczy podmiana kodu:
1
2
3
4
5
6
7
| // Jeżeli masz:
require_once 'Zend/Loader.php';
Zend_Loader::registerAutoload();
// W większości wypadków wystarczy zamiana na:
require_once 'Zend/Loader/Autoloader.php';
Zend_Loader_Autoloader::getInstance(); |
Po więcej wiedzy odsyłam ponownie na Devzone Zenda’ oraz do Dokumentacji
1 comment | tags: Web Development, Zend Framework | posted in Web Development
maj
5
2009

31 kwietnia 2009 na Zend Developer Blog pojawiła się informacja o wydaniu nowej wersji Zend Framework 1.8.0. Nowe wydanie wnosi sporo zmian, między innymi:
- RAD’a (Rapid Application Development) czyli narzędzia które pomaga w szybkim tworzeniu aplikacji. Jednym poleceniem możemy utworzyć całą strukturę projektu, Kontrolery, Widoki, Akcje.

Narzędzia RAD Zend Framework (Rapid Application Development)
- Zmianie w działaniu ulega Autoloader Zenda. Jako zależność Zend_Application is Zend_Loader_Autoloader. Zend_Loader_Autoloader jest zamiennikie Zend_Loader::autoload(), który rozwiązuje wiele problemów zgłoszonych przez uzytkowników (więcej informacji o migracji do Zend_Loader_Autoloader).
Najszybszym i najprostrzym sposobem migracji jest poniższa podmiana kodu, aczkolwiek radzę poczytać artykuł na Devzone Zenda
http://devzone.zend.com/article/4525-Developing-a-Comprehensive-Autoloader
1
2
3
4
5
6
7
| // Jeżeli masz:
require_once 'Zend/Loader.php';
Zend_Loader::registerAutoload();
// W większości wypadków wystarczy zamiana na:
require_once 'Zend/Loader/Autoloader.php';
Zend_Loader_Autoloader::getInstance(); |
- Wsparcie dla Cloud Computing oferowanego przez Amazon (Zend_Service_Amazon_Ec2, Zend_Service_Amazon_S3)
- Poprawiono ponad 200 błędów
Jeżeli chcesz zobaczyć kompletną listę zmian koniecznie odwiedź Zend Developer Blog. Zmianie uległy także Zend Framework QuickStart oraz świetny tutorial Roba Allana (Akra’s DevNotes).
no comments | tags: Web Development, Zend Framework | posted in Web Development
kwi
13
2009
Lokalnie do testowania aplikacji pod Windowsem używam Xampp’a (wersja 1.7). Jednak biblioteka do PHP PDO MySql’a w tym nie funkcjonuje tak jak należy. Udało mi się nawiązać połączenie z baza danych, lecz w momencie wykonywania zapytania „SELECT * FROM `bazadanych`” biblioteka zawiesza Apacha. Problem został już zgłoszony do grupy PHP, jednak na dzień dzisiejszy nie został oficjalnie rozwiązany.
http://bugs.php.net/bug.php?id=47722
Rozwiązanie znalazłem na forum Xamppa. Aby to naprawić należy ściągnąć ten plik,
http://windows.php.net/downloads/snaps/php-5.2-win32-VC6-x86-latest.zip
rozpakować go, znaleść libmysql.dll i podmienić pliki w katalogach xamppapachebin oraz xamppphp.
http://www.apachefriends.org/f/viewtopic.php?f=16&t=32617
1 comment | tags: Apache, MySQL, PDO, Xampp | posted in Admin Zone, Web Development
kwi
12
2009

Natknąłem się na mały problem podczas próby łączenia się z bazą danych używając PDO (adapeter do MySQL) + Zend Framework.
1
| Can't connect to local MySQL server through socket '/tmp/mysql5.sock' |
Jedną drogą rozwiązania tego problemu jest ustawienie zmiennej unix_socket w pliku php.ini. Jest jednak druga możliwość. Wystarczy podczas przekazywania ustawień połączenia dodać zmienną „unix_socket” i tam wpisać prawidłową wartość
1
2
3
4
5
6
7
8
| $options = array(
'host' => 'localhost',
'username' => 'user',
'password' => '****',
'dbname' => 'db',
'unix_socket' => '/tmp/mysql5.sock'
);
$db = Zend_Db::factory('Pdo_Mysql', $options); |
W moim przypadku używam plików .ini:
1
2
3
4
5
6
7
| [development]
db.adapter = PDO_MYSQL
db.configuration.host = localhost
db.configuration.username = user
db.configuration.password = passwd
db.configuration.dbname = dbname
db.configuration.unix_socket = /var/run/mysql/mysqld.sock |
8 comments | tags: Linux, MySQL, PDO, Zend Framework | posted in Admin Zone, Web Development