Niezalogowany [ logowanie ]
Subskrybuj kanał ATOM Kanał ATOM    Subskrybuj kanał ATOM dla tagu php Kanał ATOM (tag: php)

Autor wpisu: zleek, dodany: 05.04.2012 14:22, tagi: zend_framework, php

Zapewne wielu z Was spotkało się z problemem sortowania polskich znaków podczas pobierania danych z bazy, szczególnie gdy mamy ustawione porównywanie znaków na utf8_general_ci. Sztandarowym przykładem może być tutaj lista województw, gdzie standardowo województwo łódzkie będziemy mieli na samym końcu. Rozwiązaniem tego problemu jest wskazanie zestawu znaków dla określonej kolumny, którą wskażemy w sekcji ORDER [...]

Autor wpisu: Marek, dodany: 04.04.2012 18:29, tagi: php

Pewnie niewielu z nas będzie pracować w jednej firmie do 67 roku życia. Czasy, w których pracownik był związany z przedsiębiorstwem przez 25 lat powoli odchodzą w niepamięć. Co zrobić gdy nagle z firmy odchodzi pracownik, który miał mnóstwo kont w różnego rodzaju dedykowanych systemach CMS, odbierał maile wysyłane z formularzy zamieszczonych na stronach WWW itp.? Pocztę byłego pracownika można przekierować na innego, ale trzeba również posprzątać w serwisach www. Rzeczywistość na ogół nie jest różowa – serwisy pisane są w różnych frameworkach, niektóre mają już swoje lata, adresy e-mail moderatorów wpisane są w wielu plikach konfiguracyjnych.

To jak znaleźć wszystkie wpisy dotyczące nieaktywnego konta e-mail i zamienić je poprawnym adresem?

Założenia:

  • odszedł od nas pracownik o mailu michael.jordan@test.pl
  • chcemy przepisać wszystkie namiary na jego pocztę na innego pracownika: marcin.gortat@test.pl
  • dla uproszczenia wszystkie serwisy znajdują się w katalogu: /var/www/

Najpierw wyszukajmy wszystkich wystąpień adresu e-mail naszego byłego pracownika:

grep -r 'michael.jordan@test.pl' /var/www/ 2> /dev/null

Przykładowy wynik:

/var/www/abc/config/test.php:$config['e-mail'] = 'michael.jordan@test.pl';
/var/www/a/b/c/plik.php:$config['moderators'] = 'michael.jordan@test.pl,kobe.bryant@test.pl';

Jak widać powyżej, znaleźliśmy wpisy z poszukiwanym adresem e-mail. Polecenie grep -r wyświetla najpierw ścieżkę do pliku, potem znak dwukropka i po nim wiersz ze znalezioną frazą.

Teraz przejdźmy do sedna i zmieńmy wszystkie wystąpienia michael.jordan@test.pl na marcin.gortat@test.pl:

grep -r 'michael.jordan@test.pl' /var/www/ 2> /dev/null \
| cut -d ':' -f 1 \
| xargs sed -i 's/michael.jordan@test.pl/marcin.gortat@test.pl/g'

Krótkie wyjaśnienie:

  • w pierwszej linii wyszukujemy rekurencyjnie wystąpienia michael.jordan@test.pl w katalogu /var/www/ a wszelkie komunikaty o błędach wysyłamy w czarną dziurę ;)
  • z otrzymanego wyniku wyciągamy  jedynie nazwy plików używając jako separatora kolumn znaku ‘:’
  • taki wynik podajemy  jako argument dla polecenia sed, za pomocą którego dokonujemy właściwej zamiany ciągów znaków

I to tyle – tymi  prostymi poleceniami zamieniliśmy w plikach danej lokalizacji wszystkie wystąpienia niechcianego adresu pożądanym.

 

Czytaj dalej tutaj (rozwija treść wpisu)
Czytaj dalej na blogu autora...

Autor wpisu: d3ut3r, dodany: 04.04.2012 03:45, tagi: zend_framework, php

Dziś chciałbym przedstawić Wam w jaki sposób tworzyć kontrolery i akcje w Zend Framework zanim jednak zaczniemy potrzeba nieco teorii o tym co to jest kontroler i akcja :) tak więc zapraszam do czytania.

1. Czym są kontorlery

Najprościej mówiąc kontroler to część aplikacji której zadaniem jest odebranie danych od użytkownika oraz ich analiza.

2. Czym są akcje

Akcja to część składowa kontrolera, każdy kontroler w ZF powinien posiadać przynajmniej 1 akcję która nazywa się indexAction jest ona wywoływana jako akcja domyślna.

To tyle jeżeli chodzi o teorie :) oczywiście czytając to pierwszy raz możesz czuć się nieco zagubiony, mam jednak nadzieję że pod koniec wpisu wszystko będzie już jasne. W poprzednim wpisie “Zend Framework pierwsze starcie” pokazałem w jaki sposób wygenerować projekt o nazwie helloZend dziś dalej będziemy pracować na tym projekcie.

Ostatnim krokiem przed pracą z kodem będzie skonfigurowanie naszego projektu do pracy w trybie development co pozwoli nam w czytelny sposób śledzić ewentualne błędy w kodzie. Rozpoczynamy od edycji pliku .htaccess  z katalogu public naszego projektu. Po otwarciu pliku w pierwszej linii wpisujemy:

SetEnv APPLICATION_ENV development

Skoro wprowadziliśmy już wszystkie wymagane zmiany, mniej więcej wiemy co to kontroler a co akcja pora przejść do praktyki. Zaczniemy od pewnego faktu dotyczącego poprzedniego projektu helloZend otóż linki:

robią dokładnie to samo. W przypadku 1 linku nie podajemy żadnych parametrów zatem system wywołuje domyślny kontroler (index) oraz domyślną akcję (index). Link drugi określa kontroler którego chcemy użyć (w naszym przypadku index) oraz sam dobiera domyślną akcję. Link trzeci jest pełnym linkiem i określa on zarówno kontroler jak i akcję. Możemy zatem powiedzieć, że ogólny schemat linków dla projektów ZF wygląda tak: http://example.com/kontroler/akcja

3. Tworzenie kontrolerów

Kontrolery naszej aplikacji przechowywane są w katalogu application/controllers domyślnie są tam 2 pliki: IndexController.php oraz ErrorController.php możemy dodawać nowe kontrolery do naszej aplikacji wydając komendę:

zf create controller nazwa_kontrolera domyslna_akcja moduł
  • nazwa_kontrolera – raczej nie trzeba tłumaczyć ważne aby nazwa była intuicyjna i odzwierciedlała to czym kontroler będzie się zajmował, jeżeli np tworzymy kontroler dla newsów nazwijmy go news
  • domyslna_akcja – parametr ten ma domyślną wartość 1 i określa czy wraz z utworzeniem nowego kontrolera chcemy aby system wygenerował domyślną akcję index
  • moduł – parametr określa moduł do którego należeć będzie kontroler.

Czas przejść do czynów, do naszego projektu helloZend dodamy kontroler który nazwiemy pierwszy w tym celu będąc w katalogu projektu wydajemy polecenie:

zf create controller pierwszy

dzięki temu w katalogu controllers naszej aplikacji pojawił się plik o nazwie PierwszyController.php jeżeli otworzymy wspomniany plik zobaczymy, że skrypt wygenerował dla nas całą strukturę łącznie z akcją index(metoda o nazwie indexAction).

Czytaj dalej tutaj (rozwija treść wpisu)
Czytaj dalej na blogu autora...

Autor wpisu: Tomasz Kowalczyk, dodany: 30.03.2012 00:09, tagi: javascript, php

Wracamy na poważnie. :) Jakiś czas temu miałem problem z usuwaniem „niewidzialnych znaków” ze stringa w PHP. Mam na myśli oczywiście wszystkie te, które normalnie zapisujemy jako „slash-coś” – \n, \r, \t i tak dalej. W dzisiejszym wpisie pokażę Wam … #LINK#

Autor wpisu: Tomasz Kowalczyk, dodany: 26.03.2012 22:09, tagi: symfony2, php

Zgoda, minęło trochę czasu od ostatniego wpisu, ale wraz z nowym szablonem czas powrócić do starych dobrych czasów, kiedy to ukazywało się kilka wpisów tygodniowo. O wszystkich zmianach skrobnę nieco w innym wpisie, a tymczasem zapraszam Was do lektury kolejnego … #LINK#

Autor wpisu: Kamil, dodany: 25.03.2012 22:23, tagi: php

Konferencja 4Developers to zapewne znane już wszystkim spotkanie dla informatyków, głównie programistów PHP i Javy, choć nie tylko. Na konferencji poruszane są także tematy niezależne od języka (wydajność, skalowalność, zarządzanie projektami IT), a całość jest prowadzona przez świetnych specjalistów z całego świata. W tym roku i ja powinienem wybrać się na konferencję 4Developers, do czego [...]

Autor wpisu: zleek, dodany: 22.03.2012 22:12, tagi: php

Już za niespełna cztery tygodnie odbędzie się kolejna edycja konferencji 4Developers. Konferencja ta przeznaczona jest dla developerów, architektów, testerów i menedżerów projektów informatycznych, a także dla wszystkich, którzy interesują się tematyką związaną z programowaniem, testowaniem i zarządzaniem projektami. Jak co roku konferencja jest podzielona na cztery bloki tematyczne: Java PHP Wydajność i skalowalność Zarządzanie projektami [...]
Wszystkie wpisy należą do ich twórców. PHP.pl nie ponosi odpowiedzialności za treść wpisów.