Portal dla Vlogerów

W sieci powstał nowy ciekawy portal, który nazywa się Vlogers.pl. Serwis ma na celu skupianie społeczności polskich vlogerów i jest to jedyny taki serwis w Polsce. Ciekawostką jest to, że portal został napisany w Yii Framework. Strona jest na razie w wersji beta, ale można znaleźć na niej już ciekawe vlogi użytkowników. Autorzy serwisu zapowiadają wkrótce jakieś ciekawe nagrody i funkcjonalności. Portal proponuje również emisję reklam w przystępnej cenie. Popularność polskich vlogów stale rośnie i mam nadzieję, że portal naprawdę może zyskać na popularności. Autor zapowiada bowiem również takie funkcjonalności jak ranking vlogerów, system partnerski, system wiadomości wewnętrznych i promocję użytkowników portalu w sieciach społecznościowych. Zapraszam do odwiedzenia http://vlogers.pl

Jak zmienić pager CSS | Change pager CSS file

Domyślnie każdy widget korzystający z paginacji pobiera style z domyślnego pliku CSS umieszczonego w frameworku Yii (pager.css).  Z poziomy widgetu można ten plik wyłączyć i ustawić w głównym pliku CSS własne style pagera. Można również ustawić ścieżkę do własnego pliku ze stylami CSS dla pagera, co jest bardziej optymalne i nie generuje niepotrzebnych problemów.

Oto przykłady:

Wyłączenie pliku CSS pager.css

Istnieje jeszcze wiele możliwości modyfikacji widgetów Yii, które opiszę innym razem jak widać powyżej ustawiając cssFile na wartość false wyłączamy domyślny plik pager.css

 

Podanie ścieżki do własnego pliku pager.css

W ten sposób każdy z naszych widgetów może mieć swój indywidualny styl lub plik ze stylami CSS

Niedługo przedstawię i wyjaśnię możliwe opcje widgetów w Yii Framework.

Skrypty jQuery i JS w Yii

jquery yii frameworkYii Framework posiada wbudowane ładowanie skryptów JS. Jak wielu pewnie z was próbowało, chciałem bez zbędnych ceregieli po prostu wstawić odnośnik do bibliotek jquery i skryptu w standardowym html’u. Niestety,  albo stety taka opcja działała tylko na głównej stronie, a natomiast na podstronach niestety nie ponieważ niektóre widgety yii frameworka również kożystają z biblioteki jQuery i ją rejestrują, co powoduje konflikt…

W Yii Framework wystarczy wywołać bibliotekę jQuery w odpowiednim miejscu naszej aplikacji Yii.  Co to nam daje? Jeśli nasz widget rejestruje jQuery i posiadamy jeszcze inny skrypt który tą bibliotekę rejestruje i działa na kilku innych widokach to możemy zapomnieć o o podwójnym uruchomieniu tej biblioteki, ponieważ klasa jest zabezpieczona przed tego typu błędami. Jest to bardzo dobre rozwiązanie stosowane w wielu frameworkach.

Jak uruchomić bibliotekę jQuery w Yii Framework? To bardzo proste, wystarczy zarejestrować go za pomocą kodu:

 

Ze względu na różne zapotrzebowanie możemy ten kod umieścić w kontrolerach lub widokach naszej aplikacji.

Aby wszystko działało naprawdę poprawnie i bez problemów powinniśmy użyć metody registerScriptFile i w ten sposób możemy dodać w kontrolerach i widokach naszej aplikacji nowy skrypt .js, który będzie działał prawidłowo. Można również w ten sposób rejestrować pliki css za pomocą metody registerCssFile.

A teraz dokładnie jak to zrobić można zobaczyć poniżej:

 

A co jeśli chcemy wstawić do aplikacji tylko malutki kodzik javascript? Do tego celu służy metoda RegisterScript:

 

Co może jeszcze się przydać w wstawianiu javascript do aplikacji yii?

Możemy wybrać miejsce w którym ma wyświetlać się nasz skrypt. Są trzy możliwości:

-w nagłówku <head> (CClientScript::POS_HEAD)

-w treści strony(w miejscu gdzie bezpośrednio wstawiony jest kod – CClientScript::POS_BEGIN)

-na samym dole strony (W celu ładowania skryptów js na samym końcu- CClientScript::POS_END)

Po więcej opcji kieruję was do dokumentacji klasy CClientScript.

Yii phpThumb tworzenie miniatur

phpThumb() to prosta i lekka biblioteka operująca na popularnych formatach grafik powstała na silniku GD. Idealna do tworzenia miniatur zdjęć w takich formatach jak .JPG .PNG .GIF .BMP. Podstawowe operacje to zmniejszanie wymiarów zdjęć, przycinanie zdjęcia do konkretnego wymiaru(kadrowanie), rotacja itp. Jeśli potrzebujesz w łatwy i szybki sposób tworzyć miniatury zdjęć to ta biblioteka jest właśnie dla Ciebie.

Yii i phpThumb

Tworząc aplikację w Yii framework mamy do dyspozycji rozszerzenie EphpThumb  i jedynymi rzeczami jakie trzeba w nim zrobić to skopiowanie rozszerzenia do folderu /protected/extensions/ oraz dopisanie w pliku /protected/config/main.php nowego komponentu co widać poniżej:

 

Teraz możemy już korzystać z możliwości tej biblioteki. Przykładowa zmiana wymiarów zdjęcia:

To tylko jedna z funkcji tej biblioteki. Jedną z kilku ciekawych funkcji jest też przycięcie obrazka do środka tzn. kadrowanie obrazu. Do tego celu służy funkcja adaptiveResize():

 

Mając np. zdjęcie o wymiarach 1200x800px zostanie wycięty ze środka fragment o wymiarach 200x200px.

Dostępne są również takie funkcje jak rotateImage(), crop(), czy resizePercent(), które możecie sobie sprawdzić sami lub sprawdzając ich działanie na stronie phpthumb https://github.com/masterexploder/PHPThumb/wiki/Basic-Usage

Serdecznie zapraszam do korzystania z rozszerzenia EphpThumb i pozdrawiam Haensel.

 

 

Yii CDbConnection nie zdołał otworzyć połączenia DB.

Pewnego pięknego dnia przerzucając swoją aplikację na serwer klienta spotkała mnie dość ciekawa niespodzianka.

Error 500

CDbConnection nie zdołał otworzyć połączenia DB.

 

Pomyślałem sobie od razu,  pewnie dane dostępowe do mojej bazy mysql się nie zgadzają… Jeszcze większą niespodzianką było to,  że dane w pliku /config/main.php były w 100% poprawne.  Szukając w sieci rozwiązania mojego problemu, nigdzie nie znalazłem jednoznacznej odpowiedzi na mój problem. Zdziwiony tym zjawiskiem użyłem magicznego skryptu skonstruowanego w php:


I co widzę? Działa :)

I wtedy tchnęła mnie jedna myśl aby zrobić to co powinienem zrobić na samym początku, czyli sprawdzić ustawienia serwera, oraz php.
Używając funkcji phpinfo():

I wszystko mi się wyjaśniło, gdy zobaczyłem, że nie ma zainstalowanego sterownika PDO dla Mysql. Przypadek trochę dziwny, choć niektórym znany.  Na szczęście PDO jest coraz bardziej popularne i u większości hostingodawców jest on dostępny. Oczywiście możecie sobie napisać funkcję korzystającą z PDO, aby sprawdzić czy działa, ale po co za dużo klikać. :)

Yii meta tags | Meta tagi w Yii

Budując aplikację internetową, którą udostępnimy w sieci musimy wziąć pod uwagę fakt, że aby zaistniała w wyszukiwarkach internetowych odpowiednie będą pewne kroki w celu optymalizacji kodu. Dokładniej mówiąc chodzi o SEO (Search Engine Optimization), które polega na zoptymalizowaniu kodu pod kątem wyszukiwarek.

Istotnym krokiem w optymalizacji SEO jest ustawienie odpowiednich metatagów, czyli znaczników z których korzystają wyszukiwarki. Trzy najważniejsze z nich to:

Treść, meta-tagów należy zdefiniować z poziomu kontrolera:
controllers/SiteController.php:

Następnie mamy kilka możliwości, możemy zdefiniować nasze meta tagi przed renderowaniem akcji np. Index:

Takie rozwiązanie można zastosować do dowolnej akcji.

Można również zdefiniować nasze meta tagi bezpośrednio w pliku widoku
np. views/site/contact.php w taki sposób:

Kiedy już mamy zdefiniowane nasze zmienne meta tagów możemy przejść do edycji layoutu:
views/layouts/main.php

Dzięki takiemu rozwiązaniu nasza aplikacja wyświetli zdefiniowane przez nas meta-tagi. Jest wiele możliwości zdefiniowania naszych metatagów takich jak z poziomu akcji kontrolera, jak i w samych plikach widoku co daje nam możliwość ustawienia meta w statycznych częściach aplikacji.

Yii Upload Form | Upload Plików

Ponieważ jakiś czas już grzebię sobie w Yii Framework jednym z nurtujących mnie zagadnień do zrealizowania było stworzenie formularza z możliwością uploadu pliku, zdjęcia. Mój formularz dodaje zdjęcie i plik dla przykładu wykorzystałem tutorialowy blog Yii. W tworzeniu stron internetowych niezwykle ważne są elementu formularza typu file. A więc zacznijmy od kontrolera, który będzie miał za zadanie zapisanie naszego pliku w określonej przez nas lokalizacji. Dla kontrolera musimy utworzyć bądź zmodyfikować dwie akcje actionCreate(), actionUpdate().

Kontroler:

Funkcja Create jest dość prosta, ponieważ polega ona na pobraniu nazwy zdjęcia i pliku do zapisu w bazie danych, oraz na zapisie nowych plików pobranych poprzez formularz. Większy problem zaczyna się przy akcji Update, co opisałem dokładnie krok po kroku:

Kolejnym elementem naszego formularza który przeanalizuję będzie model w którym ustawimy wszystkie reguły. Na początek definiujemy nasze dwie zmienne image, oraz file.

Model:

Teraz przechodzimy do funkcji rules(), gdzie ustawimy nasze reguły. Ja z powodu braku takiej potrzeby nie ustawiałem żadnych reguł po za rodzajem pliku.

Model:

A więc jedyne, co nam pozostało do wykonania to edycja pliku widoku. Tak jak wspominałem, korzystałem z tutorialowego blogu yii tak więc edytowałem plik _form.php dla widoku Post, lecz można to zrobić z dowolnym formularzem np. wygenerowanym przez Gii. Wystarczy teraz wkleić kod widoku naszych pól image i file formularza.

Widok:

Najlepiej to wkleić przed ostatnimi elementami formularza lecz ułożenie jest dowolne :)

Od teraz możemy się cieszyć uploadem plików i zdjęć z naszego formularza. Na dzień dzisiejszy nie potrzebowałem tworzyć akcji usuwania plików lecz może zabiorę się za to już wkrótce:)

Thanks for laret :)

Co to jest Yii Framework

yii frameworkYii jest jednym z najszybszych i najciekawszych Frameworków w języku PHP. Właściwie najszybszym z jakim się spotkałem. Projektowanie stron internetowych dynamicznych to teraz żaden problem. Najciekawszą rzeczą, która mnie zainteresowała jest przeglądarkowy generator kodu Gii, który pozwala nam na automatyczne tworzenie kontrolerów, modeli, formularzy, modułów oraz CRUD – czyli create, read, update and delete, cztery podstawowe procedury na wpisach z bazy danych. Tworząc CRUD, powstaje nam nowy widok, który umożliwia przeglądanie rekordów tabeli, kasowanie aktualizowanie i usuwanie. Do tego celu generator tworzy również odpowiednie formularze. Bardzo ładnie napisana dokumentacja jest również częściowo spolszczona co bardzo ułatwia naukę tego frameworka. Te wszystkie czynniki sprawiają, że szybkie pisanie aplikacji staje się naprawdę możliwe.

Dopiero zaczynam przygodę z tym frameworkiem dlatego ucząc się będę opisywał następnych wpisach wszelkie zagadnienia dotyczące Yii. Serdecznie zapraszam na stronę projektu www.yiiframework.com

Strony mobilne

W Polskim internecie powstaje coraz więcej stron mobilnych. Czy są one poprawne? Czy działają zgodnie z naszymi urządzeniami?

Jak działa strona mobilna?

Tworzenie stron mobilnych wymaga dostosowania kodu witryny do przeglądarek instalowanych w tych urządzeniach, jak i również do wielkości wyświetlaczy.

Jak przeglądarka ma przejść do wersji mobilnej strony?

To ustawienie wymaga odpowiedniej konfiguracji serwera, lub zastosowania skryptów, najlepszym sposobem na przekierowanie do strony mobilnej jest zmiana ustawienia serwera Apache w pliku .htaccess, gdzie można ustawić przekierowanie po nagłówku przeglądarki.

Dlaczego taki sposób?

Nie wszystkie przeglądarki mobilne obsługują skrypty takie jak javascript, co może spowodować, że przekierowanie na stronę mobilną nie zadziała tworzenie stron olesnica

tworzenie stron mobilnych

First

Pierwszy wpis nie będę się ropisywał 😛