Strona główna
Harmonogram
Aktualne propozycje
Stałe propozycje
Grupy
Z życia ROZWIJALNI
Nasi partnerzy
Dla dzieci

 

 

 

 

 

 ROZWIJALNIA
Dom Twórczego Życia
ul. J. Chełmońskiego 30
51-630 Wrocław
 
 zobacz nas na mapie 
 e-mail: info@rozwijalnia.pl 
 tel. 0-71 348-60-30 
 






 

Pomoc: Makra Programisty

Poniższe makra są zaprojektowane w celu dostarczenia funkcjonalności języka programowania podczas tworzenia serwisu. Są one bardzo użyteczne jeżeli poprawnie zostaną użyte, natomiast mogą być niebezpieczne gdy są użyte nieodpowiednio - należy uważać i starannie planować używanie makr.

UWAGA: Makra te zawarte są w systemie WebGUI aby znacznie zwiększyć funkcjonalność mechanizmów wyświetlania zawartości serwisu. Pomimo tego że można dzięki nim pisać nawet proste aplikacje dla serwisu, nie są one do tego przeznaczone - jeżeli zamierzasz tworzyć takie aplikacje, po prostu napisz makro. =) Domyślnie makra są zablokowane przed użyciem aby chronić bezpieczeństwo twojego serwisu - tylko administrator może odblokować możliwość ich używania.

^D; or ^D(); - Date
Bieżąca data i czas.

Datę można skonfigurować używając dodatkowo symboli definiowania formatu. Przykładowo, jeżeli zdefiniowałeś makro w postaci ^D("%c %D, %y"); to wyświetli ono datę w przykładowej postaci Luty 26, 2004. Oto dostępne symbole definiowania formatu daty:

%%%
%yrok w postaci czterocyfrowej liczby
%Yrok w postaci dwucyfrowej liczby
%mmiesiąc w postaci dwucyfrowej liczby
%Mliczba oznaczająca numer miesiąca
%cnazwa miesiąca
%ddzień miesiąca w postaci dwucyfrowej liczby
%Dliczba oznaczająca dzień miesiąca
%wnazwa dnia tygodnia
%hdwucyfrowa liczba oznaczająca godzinę dnia (w zakresie 0-12)
%Hliczba oznaczająca godzinę dnia (w zakresie 0-12)
%jdwucyfrowa liczba oznaczająca godzinę dnia (w zakresie 0-24)
%Jliczba oznaczająca godzinę dnia (w zakresie 0-24)
%ppisane małą literą słowo am/pm (oznaczającę porę przed i po południu)
%Ppisane dużą literą słowo AM/PM (oznaczające porę przed i po południu)
%zustawiony przez użytkownika format prezentowania daty
%Zustawiony przez użytkownika format prezentowania czasu

^Env()
Wyświetla wartość zmiennej środowiskowej serwera podanej jako parametr. Na każdym serwerze dostępny jest inny zestaw i wartości zmiennych środowiskowych ? zestaw zmiennych własnego serwera możesz obejrzeć wywołując w katalogu głównym twojego serwisu plik o nazwie env.pl (http://www.adrestwojegoserwisu.pl/env.pl)

Makro powinno być wywoływane w przykładowej postaci ^Env("REMOTE_ADDR");

^Execute();
Umożliwia wykonanie przez administratora lub menedżera zawartości, programu dostępnego na serwerze ? przykładowe wywołanie: ^Execute("/podkatalog/plik.sh");.

^FormParam();
To makro głównie jest wykorzystywane do generowania dynamicznych zapytań do bazy danych w raportach SQL Reports. Dzięki temu makro możesz uzyskać wartość dowolnego pola formularza, podając jako parametr nazwę tego pola, przykładowo: ^FormParam("Numertelefonu");

^If();
Prosta instrukcja warunkowa (IF/THEN/ELSE ? ?Jeżeli warunek jest spełniony to wykonaj pierwszą instrukcji, w przeciwnym wypadku wykonaj drugą instrukcję?) umożliwiająca kontrolę wyglądu strony i wyświetlanych wiadomości.

Przykłady:
Wyświetla napis Szczęśliwego Nowego Roku w dniu 1 stycznia: ^If('^D("%m%d");' eq '0101' , Szczęśliwego Nowego Roku);

Wyświetla wiadomość dla użytkowników z podsieci 192.168.1.* oraz dla użytkowników spoza tej sieci:
^If('^Env("REMOTE_ADDR");' =~ /^192.168.1/,"Witaj użytkowniku naszej sieci 192.168.1.*","Witaj obcy przybyszu");

Wyświetla wiadomość dla użytkowników korzystających z systemu Windows:
^If('^Env("HTTP_USER_AGENT");' =~ /windows/i,"Czy wiesz że system Linux jest bezpłatny?");

Wyświetla wiadomość dla użytkowników korzystających z dostępu poprzez serwer proxy:
^If('^Env("HTTP_VIA");' ne "", Korzystasz z serwera proxy, Nie korzystasz z serwera proxy...);

Wyświetla wiadomość dla użytkowników zależną od pory dnia:
^If(^D("%J");<=12,Witaj o poranku,^If(^D("%J");<=18,Witaj po południu,Dobry wieczór););

^Include();
Umożliwia administratorowi lub menedżerowi zawartości wstawienie w treść pliku dostępnego na serwerze.

Przykład: ^Include("/pdkatalog/plik.html");

^International();
Wyświetla przetłumaczony zwrot podany jako parametr, według tłumaczeń dostępnych w systemie WebGUI.

Przykład: ^International(45,"Article");

^Quote();
Formatuje podany tekst jako tekst zapytania do bazy danych, dzięki czemu będzie ono mogło być później użyte do wykonania zapytania SQL.

^Page();
To makro pozwala uzyskać informacje o bieżącej stronie. Przykładowo można uzyskać w ten sposób adres URL strony, podając makro w postaci ^Page("urlizedTitle"); lub wyświetlić tytuł menu podając makro w postaci ^Page("menuTitle");.

^SQL();
Raport SQL składający się z nie więcej niż jednej linii danych, umożliwiający szybki dostęp do konkretnej informacji z bazy danych. To makro skutecznie poszerza możliwości obiektu raportu SQL. Dane mogą być pozycjonowane na stronie za pomocą numerycznych makr (^0; ^1; ^2; etc) oraz możliwe jest również użycie makra ^rownum; dostępnego również w obiektach raportów SQL. Przykłady:

^SQL("select count(*) from users","W systemie istnieje ^0; użytkowników.");

^SQL("select userId,username from users order by username","<a href='^/;?op=viewProfile&uid=^0;'>^1;</a><br>");

^URLEncode();
To makro głównie jest użyteczne w raportach SQL, ale może być również dowolnie użyte w innych miejscach. Podany jako parametr tekst, jest przetwarzany do postaci jaka może być wykorzystywana w adresie URL (przykładowo do definiowania wartości parametrów wywoływanego adresu). Składnia tego makro jest następująca: ^URLEncode("oto mój tekst");

^User();
To makro umożliwia wyświetlenie dowolnej informacji dostępnej w profilu lub danych konta użytkownika. Przykładowo, jeżeli chcesz wyświetlić adres email użytkownika, to makro będzie miało postać:: ^User("email");

^*; or ^*(); - Random Number
Losowo generowany numer. Taki numer jest często używany dla obrazków (takich jak treści banerów reklamowych), dla których chcesz zapewnić nie korzystanie przez system z pamięci cache (każde wywołanie takiego banera jest wtedy traktowane jako nowy adres URL). Dodatkowo możesz ograniczyć zakres generowanych liczb - przykładowe makro o postaci ^*(100); będzie generować losowo liczby z zakresu od 0 do 100.

^-;,^0;,^1;,^2;,^3;, etc.
Te makra są zarezerwowane dla funcji związanych z systemem/obiektami, przykładowo w raportach SQL i menedżerze zawartości lub stylu.

Zobacz także:

Poleć tę stronę zainteresowanym
Moje konto