Linkdump #53: Ej, dżej, jQuery.

Pomimo upływu czasu i wielu zmian w środowiskach programistów stron internetowych, biblioteka jQuery zdaje się być cały czas najpopularniejszym rozwiązaniem ułatwiającym ich pracę. Mimo okrzyknięcia tej biblioteki “PHP4 JavaScriptu”, na pewno można się w niej doszukać wielu pozytywnych aspektów. W dzisiejszym Linkdumpie chciałbym po raz kolejny przedstawić kilka rzeczy pozwalających na odzyskanie wiary w jQuery.

PHP: Sprawdzanie rozdzielczości pliku graficznego.

Kilka dni temu trafiłem na pytanie o pomoc w przeskalowaniu obrazka do uploadu na pewnej stronie internetowej. Pomyślałem sobie: “kurczę, znowu ktoś nie umie takich podstawowych rzeczy”, aczkolwiek w opisanych wymaganiach znalazły się nie tylko informacje na temat docelowego rozmiaru, ale także rozdzielczości. Nauczony doświadczeniem zasugerowałem, żeby ten ostatni parametr zostawić w spokoju, ponieważ “i tak go nie sprawdzą”. W odpowiedzi dostałem jednak informację, że właśnie dlatego próby samodzielnej zmiany wymiarów nie przechodzą walidacji formularza. Stwierdziłem, że warto będzie zobaczyć, w jaki sposób można sprawdzić taki parametr na własną rękę.

WAMPServer, PHP: Problem z aktywacją rozszerzenia php_intl.

W przypadku wielu programów ich twórcy chwalą swoje produkty jako działające bezbłędnie, mimo nieustannych prób użytkownika skierowanych w stronę zakłócenia tego błogostanu. O ile zdecydowana część tychże spełnia wspomniane warunki, o tyle kosztem osiągnięcia takiego celu jest głównie poprawność działania wyłącznie w zakresie podstawowych funkcji. Jeśli użytkownik zechce zrobić coś bardziej zaawansowanego - wtedy zaczynają się schody. W dzisiejszym wpisie chciałbym omówić jeden taki problem związany ze stosem WAMP, jakiego sam używam, czyli WAMPServerem.

WAMPServer, PHP: Problem z aktywacją rozszerzenia php_intl.

Problem, na jaki dzisiaj natrafiłem jest krótki i prosty - zechciałem wykorzystać w jednym ze skryptów klasę Normalizer, która pozwala na “normalizację” stringów ze znakami spoza zbioru ASCII do ich bardziej czytelnej formy. Za obecność tejże w kodzie odpowiada rozszerzenie php_intl, które w systemie Windows znajduje się w pliku php_intl.dll.

Doctrine: Funkcje SQL w zapytaniach do bazy danych.

Od kiedy programiści stron internetowych [i nie tylko] dostali w swoje ręce pierwsze biblioteki wspomagające technikę ORM - mapowania obiektowo-relacyjnego, stało się jasne, że w bardzo wielu przypadkach oszczędzą nam one samodzielnego pisania zapytań SQL i związanych z tym problemów i błędów. Za bardzo przyjemną abstrakcją tychże bibliotek kryje się jednak jeden problem - ze względu na fakt, iż próbuje ona zastąpić nam całkowicie leżącą niżej warstwę bazy danych, bardzo często nie mamy możliwości skorzystania z natywnych funkcji SQLa. W niniejszym wpisie pokażę, jak sobie z tym poradzić wykorzystując bibliotekę ORM Doctrine.

Linkdump #42: My name is Script, JavaScript.

Istnienie konferencji takich jak Falsy Values skłania nas coraz bardziej do zagłębienia się w szczegóły możliwości oferowanych przez język JavaScript. Pomysły na rozwój tego języka, takie jak m. in. nowości standardu ECMAScript 6, biblioteka Node.js i Fabric.js, czy też zupełnie inne spojrzenie na tą technologię - gdzie dumnie wypina pierś projekt CASSIS, to tylko niektóre, które można wymienić jednym tchem. Zapraszam do zapoznania się z kolejną listą ciekawych materiałów związanych z językiem JavaScript.

CKEditor: Usuwanie paragrafu <p> otaczającego zawartość edytora.

Wtorkowy wpis był poświęcony integracji biblioteki CKEditor z polami formularzy wygenerowanymi poprzez konsolowe polecenia biblioteki “admin generator” frameworka symfony. W ogólnej pracy jest on bardzo przyjemny - nawet pisanie rozszerzeń nie sprawia większych kłopotów ze względu na dobrze zdefiniowany interfejs wtyczek i ogólny porządek w kodzie. Nie znaczy to jednak, że nie ma problemów wcale, stąd dzisiejszy wpis, w którym pokażę, jak poradzić sobie z pewną przypadłością, “z wyboru” wprowadzoną przez programistów edytora, a nie zawsze pożądaną przez użytkowników.

CKEditor: Usuwanie paragrafu

otaczającego zawartość edytora.

Na pewno zastanawiacie się teraz, co może być tą przypadłością. Otóż, jeśli nie korzystamy z funkcji “Pokaż źródło”, to jeśli stworzymy instancję CKEditora bez żadnej treści [puste okno zawartości], nie jest ono wcale takie puste, jakby się mogło wydawać. Typowy użytkownik zacznie wypełniać edytor treścią, a następnie zapisze to, co stworzył w bazie danych. Zależnie od użytego przez programistę arkusza CSS strony docelowej, prawdopodobnie mniej lub bardziej zdziwią go dziwne odstępy na górze i dole tejże.

MySQL Workbench: Generowanie plików YAML dla Doctrine i symfony.

W codziennej pracy używamy wielu narzędzi wspomagających naszą pracę przy tworzeniu stron internetowych i wykonywaniu innych usług z tym związanych. Poczynając od IDE, poprzez różnego rodzaju narzędzia konsolowe, aż po wtyczki w przeglądarkach internetowych jesteśmy zależni od wielu tysięcy linii kodu, dzięki którym nasze życie jest o wiele łatwiejsze, niż w przypadku, kiedy musielibyśmy wykonać tą pracę sami. W dzisiejszym wpisie chciałbym pokazać jeden z niedawno poznanych sposobów na ułatwienie sobie życia podczas pracy z biblioteką Doctrine i frameworkiem symfony.

Linkdump #34: Zbiór przydatnych bibliotek JavaScript.

JavaScript to chyba najbardziej dynamicznie rozwijający się język programowania pod względem powstającej bazy kodu i przydatnych narzędzi wspomagających. Przyjrzyjmy się kilku ciekawym bibliotekom, jakie możemy wdrożyć do naszych projektów bez zbędnego wysiłku, a ku uciesze klientów.

Linkdump: Zbiór przydatnych bibliotek JavaScript.

1. d3.js Data-Driven Documents. Biblioteka wspomagająca przetwarzanie stron internetowych opartych na dużych zbiorach danych.

Linkdump #28: Scriptu, scriptu, JavaScriptu!
W serii Linkdump dawno nie było już nic na temat samego JavaScriptu. Zobaczmy więc, co nowego pojawiło się w temacie od ostatnich kilku tygodni. Linkdump: Scriptu, scriptu, JavaScriptu! 1. LABjs. Skrypt pozwalający na dynamiczne ładowanie plików z różnego rodzaju zasobami wraz z przesyłaniem parametrów. JavaScript Hoisting Explained. Artykuł o bardzo [nie]ciekawej właściwości języka JavaScript, przez którą możemy mieć problemy z wykonywaniem naszych skryptów. Determine CSS Property Support Using Javascript Feature Testing.
Linkdump #27: Raz, dwa, trzy, cztery, maszeruje jQuery.

Każdy z nas miał taki okres w życiu, kiedy swój wiek mógł pokazać na palcach obu rąk. Jednym z ważnych elementów dzieciństwa były tzw. wyliczanki, dzięki którym m. in. wyznaczało się osobę, która miała wykonać pewną czynność określoną przez daną zabawę. Ze względu na to, że ostatni Linkdump o jQuery był już daaawno temu [#5], a więc w “dziecięcych latach” tej serii, zapraszam do odświeżenia swoich wiadomości na ten temat.

Linkdump: jQuery.

1. Stunning jQuery animations. Ciekawe przykłady animacji wykonanych z wykorzystaniem jQuery.