Linkdump #58: jQuery strikes again!

Kontynuując naprawianie mojego lenistwa związanego z publikacją wpisów na blogu oddaję w Wasze ręce kolejny Linkdump, tym razem poświęcony najpopularniejszej bibliotece / frameworkowi JavaScriptu - jQuery. Mam nadzieję, że zebrane tu informacje po raz kolejny będą dla Was przydatne i znajdą zastosowanie zarówno w projektach komercyjnych, jak też we własnym domowym “dziubaniu” kodu. Zapraszam do lektury!

 

symfony: Przekazywanie dodatkowych danych do klasy formularza.

Komponent formularzy frameworka symfony jest naprawdę bardzo potężnym narzędziem, pozwalającym na tworzenie zaawansowanych rozwiązań przetwarzających dane pochodzące od użytkownika na odpowiednią formę. O ile przetwarzanie formularza zazwyczaj sprowadza się do operacji na przesłanych do niego danych, o tyle czasem potrzebujemy innych, zawartych poza jego polami. W dzisiejszym wpisie chciałbym pokazać, w jaki sposób przekazać te dodatkowe dane do klasy naszego formularza. Zapraszam do lektury.

 

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.

(My)SQL: Klauzule ORDER BY oraz LIMIT w zapytaniach z operatorem UNION.

W ciągu ostatnich tygodni naprawdę mocno pracowałem z przeróżnymi zapytaniami SQL, stąd też wynotowałem sobie kilka kwestii, które uznałem za warte opisania na blogu. Ostatnie dwa wpisy na ten temat, czyli znajdowanie rekordów sąsiednich, czy też operacje na przedziałach czasu to tylko wierzchołek góry lodowej problemów, z jakimi musiałem się zmierzyć, żeby osiągnąć zamierzony efekt. Dzisiaj chciałbym powiedzieć kilka słów na temat składni zapytań łączonych operatorem UNION - zapraszam do lektury.

SQL: Znajdowanie rekordów w przedziale czasu.

Dzisiejszy wpis ponownie będzie krótki i prosty, ponownie też podejmę temat zapytań SQL przydatnych w codziennej pracy programisty. Czym w takim razie się zajmiemy? Otóż, w związku z tym, że “czasem” musimy wykonać pewne instrukcje w zależności od istnienia bądź nieistnienia rekordów dodanych w konkretnym przedziale czasu (np. wczoraj, w ostatnim tygodniu), w tym wpisie chciałbym pokazać, jak to zrobić w prosty i przyjemny sposób. Zapraszam do lektury.

Linkdump #52: ABC PHP.

Ten Linkdump jest zdecydowanie spóźniony - to chyba pierwszy wpis, z którym “nie wyrobiłem” się w ciągu dwóch dni względem Harmonogramu. Tak to jednak jest, jak się ma tyle pracy, że po tych kilkunastu godzinach człowiek już nawet nie myśli o tym, że gdzieś w Internecie istnieje jakaś strona, którą się zarządza, a tym bardziej, że wypadałoby ją nieco zaktualizować. Dlatego dzisiaj naprawiam swój błąd i publikuję zaległy Linkdump z niedzieli. Zapraszam do lektury!

PHP: Funkcja extract() i rejestrowanie zmiennych przekazanych do widoku.

Kiedy programuję aplikacje z wykorzystaniem różnego rodzaju frameworków, zawsze zastanawiam się, jak to jest, że ich twórcy potrafią wymyślić rozwiązania, dzięki którym codziennie oszczędzamy cenny czas. Na pewno jest to doświadczenie, na pewno swój wkład ma także talent danego programisty, ale istotną częścią jest także dogłębna znajomość języka programowania, w którym rzeczony framework jest tworzony. W dzisiejszym wpisie chciałbym się z Wami podzielić ciekawym trikiem, jaki pozwala frameworkom na znaczne uproszczenie korzystania z danych przekazanych do widoku.

[SQL] Zapytanie pobierające kolejne numery zwracanych rekordów.

Kilka dni temu, walcząc z modułem wyświetlającym menu w Joomli trafiłem na dosyć ciekawy problem: jak skonstruować zapytanie do bazy danych tak, aby jedna z kolumn w danych wynikowych została wypełniona kolejnymi numerami zwracanych rekordów? Oczywiście nie muszę mówić, że problem został pomyślnie rozwiązany, a ja zapraszam do lektury niniejszego wpisu.

Problem.

Jeśli opisane przeze mnie w nagłówku zjawisko nie jest dostatecznie zrozumiałe, postaram się opisać to na przykładzie. Weźmy pod uwagę tabelę:

[Linux] Udostępnianie danych użytkowników na serwerach DreamHost.
Od dłuższego czasu korzystam z hostingu wykupionego w amerykańskiej firmie DreamHost. Pomimo wielu negatywnych opinii, jakie znalazłem na różnych forach i blogach muszę powiedzieć, że jestem całkiem zadowolony ze świadczonych mi usług. W tym momencie przypominam sobie tylko jeden przypadek, kiedy nie miałem dostępu do danych przez około dziesięć minut. Dostęp do serwera poprzez SSH, SVN, możliwość tworzenia własnych serwerów MySQL, nielimitowane parametry konta - słowem cud, miód i orzeszki. Nie znaczy to jednak, że musisz rzucić swojego dotychczasowego dostawcę i przenieść się do DH, aż tak dobrze nie jest ;] Jednym z problemów, jakie napotkałem podczas korzystania z serwera było to, że tworząc konto FTP dla strony internetowej klienta nie mogłem uzyskać do niego [tego konta ;]] pełnego dostępu, inaczej niż przez zalogowanie się przy użyciu jego [tego klienta ;]] danych.
[WordPress] Problem z datą publikacji wpisu przy wcześniejszym zapisaniu szkicu.

Wordpress jest bardzo przyjazną użytkownikowi i całkiem potężną platformą blogową, naprawdę do niewielu rzeczy można się w tym systemie “przyczepić”. Nie zmienia to jednak faktu, że pewne rzeczy wymagają dopracowania, a co najmniej ponownego przemyślenia. Jedną z takich “uciążliwości” jest zapisywanie postów do późniejszego sprawdzenia / przeredagowania / edycji. W momencie bezpośredniego zapisania poprzez użycie przycisku “zapisz szkic” [ang. “save draft”] i późniejszej publikacji [późniejszej, czyli co najmniej jeden dzień po napisaniu szkicu] ze zdziwieniem możemy stwierdzić - “a co to za dziwna data?”. Otóż, w momencie pierwszego zapisu data publikacji jest już ustawiona “na sztywno” w bazie danych i nie da się jej zmienić inaczej, niż przez edycję jednej z kolumn odpowiedniego rekordu w tabeli wp_posts. Przyznacie sami, że to zachowanie jest nieco nielogiczne, jednak twórcy uważają inaczej.