https://wiki.opzsgu.pl/api.php?action=feedcontributions&user=Fotex&feedformat=atomPodręcznik Administratora by OPZ SGU - Wkład użytkownika [pl]2024-03-29T09:25:07ZWkład użytkownikaMediaWiki 1.36.2https://wiki.opzsgu.pl/index.php?title=Instalacja_ImageMagick_i_konfiguracja_z_php5&diff=1275Instalacja ImageMagick i konfiguracja z php52013-11-26T10:22:49Z<p>Fotex: Dodanie brakkujacej istotnej informacji o zmianach w pliki php.ini</p>
<hr />
<div>Okazuje się ze instalacja '''ImageMagick''' na serwerze z '''DirectAdmin''' wcale nie jest taka prosta.<br />
<br />
'''DirectAdmin''' korzysta z nazwy deamona apache2 w formie nazwy httpd. Stanowi to problem gdy chcemy zainstalowac pakiet php5-imagick.<br />
<br />
Poniżej kompletny opis instalacji na systemie debian 6 64bit z DirectAdmin:<br />
<br />
po pierwsze instalujemy '''imagemagick''' oraz pakiet dev:<br />
<br />
<pre><br />
apt-get install imagemagick libmagickwand-dev<br />
</pre><br />
<br />
następnie instalujemy imagick dla php jednak bez korzystania z apta ale '''PECL''':<br />
<br />
<pre><br />
pecl install imagick<br />
</pre><br />
<br />
przy pytaniu o nazwe instalacji imagemagick wybieramy opcje domyslna czyli autodetect<br />
<br />
po instalacji przychodzi kolej na edycje '''php.ini'''<br />
<br />
<pre><br />
nano /usr/local/lib/php.ini<br />
</pre><br />
<br />
odszukujemy linie:<br />
<br />
<pre><br />
extension_dir="./"<br />
</pre><br />
<br />
i zmieniamy ją na:<br />
<br />
<pre><br />
extension_dir = "/usr/local/lib/php/extensions/no-debug-non-zts-20060613/"<br />
</pre><br />
<br />
bo tam właśnie będa zlokalizowane nasze dodatkowe biblioteki dla php. zapisujemy zmiany (ctrl+o) i zamykamy edytor (ctrl+x)<br />
na koniec dodajemy w pliki php.ini informację o chęci użycia biblioteki przez dodanie linii:<br />
<br />
<pre><br />
extension=imagick.so<br />
</pre><br />
<br />
restartujemy serwer:<br />
<br />
<pre><br />
/etc/init.d/httpd restart<br />
</pre><br />
<br />
i cieszymy sie z posiadania imagemagick :D<br />
<br />
<br />
[[Category:Ubuntu]]</div>Fotexhttps://wiki.opzsgu.pl/index.php?title=Plik:BxPmtPayPal.zip&diff=1180Plik:BxPmtPayPal.zip2012-10-24T19:00:51Z<p>Fotex: testy</p>
<hr />
<div>testy</div>Fotexhttps://wiki.opzsgu.pl/index.php?title=Instalacja_ImageMagick_i_konfiguracja_z_php5&diff=1112Instalacja ImageMagick i konfiguracja z php52012-05-24T19:00:43Z<p>Fotex: </p>
<hr />
<div>Okazuje się ze instalacja '''ImageMagick''' na serwerze z '''DirectAdmin''' wcale nie jest taka prosta.<br />
<br />
'''DirectAdmin''' korzysta z nazwy deamona apache2 w formie nazwy httpd. Stanowi to problem gdy chcemy zainstalowac pakiet php5-imagick.<br />
<br />
Poniżej kompletny opis instalacji na systemie debian 6 64bit z DirectAdmin:<br />
<br />
po pierwsze instalujemy '''imagemagick''' oraz pakiet dev:<br />
<br />
<pre><br />
apt-get install imagemagick libmagickwand-dev<br />
</pre><br />
<br />
następnie instalujemy imagick dla php jednak bez korzystania z apta ale '''PECL''':<br />
<br />
<pre><br />
pecl install imagick<br />
</pre><br />
<br />
przy pytaniu o nazwe instalacji imagemagick wybieramy opcje domyslna czyli autodetect<br />
<br />
po instalacji przychodzi kolej na edycje '''php.ini'''<br />
<br />
<pre><br />
nano /usr/local/lib/php.ini<br />
</pre><br />
<br />
odszukujemy linie:<br />
<br />
<pre><br />
extension_dir="./"<br />
</pre><br />
<br />
i zmieniamy ją na:<br />
<br />
<pre><br />
extension_dir = "/usr/local/lib/php/extensions/no-debug-non-zts-20060613/"<br />
</pre><br />
<br />
bo tam właśnie będa zlokalizowane nasze dodatkowe biblioteki dla php. zapisujemy zmiany (ctrl+o) i zamykamy edytor (ctrl+x)<br />
<br />
restartujemy serwer:<br />
<br />
<pre><br />
/etc/init.d/httpd restart<br />
</pre><br />
<br />
i cieszymy sie z posiadania imagemagick :D<br />
<br />
<br />
[[Category:Ubuntu]]</div>Fotexhttps://wiki.opzsgu.pl/index.php?title=Instalacja_ImageMagick_i_konfiguracja_z_php5&diff=1106Instalacja ImageMagick i konfiguracja z php52012-05-24T18:49:03Z<p>Fotex: Utworzył nową stronę „Okazuje się ze instalacja ImageMagick na serwerze z DirectAdmin wcale nie jest taka prosta. DirectAdmin korzysta z nazwy deamona apache2 w formie nazwy httpd. Stanowi...”</p>
<hr />
<div>Okazuje się ze instalacja ImageMagick na serwerze z DirectAdmin wcale nie jest taka prosta.<br />
<br />
DirectAdmin korzysta z nazwy deamona apache2 w formie nazwy httpd. Stanowi to problem gdy chcemy zainstalowac pakiet php5-imagick.<br />
<br />
Poniżej kompletny opis instalacji na systemie debian 6 64bit z DirectAdmin:<br />
<br />
po pierwsze instalujemy imagemagick oraz pakietu dev:<br />
<br />
apt-get install imagemagick libmagickwand-dev<br />
<br />
następnie instalujemy imagick dla php jednak bez korzystania z apta ale PECL:<br />
<br />
pecl install imagick<br />
<br />
przy pytaniu o nazwe instalacji imagemagick wybieramy opcje domyslna czyli autodetect<br />
<br />
po instalacji przychodzi kolej na edycje php.ini<br />
<br />
nano /usr/local/lib/php.ini<br />
<br />
odszukujemy linie:<br />
<br />
extension_dir="./"<br />
<br />
i zmieniamy ją na:<br />
<br />
extension_dir = "/usr/local/lib/php/extensions/no-debug-non-zts-20060613/"<br />
<br />
bo tam właśnie będa zlokalizowane nasze dodatkowe biblioteki dla php. zapisujemy zmiany (ctrl+o) i zamykamy edytor (ctrl+x)<br />
<br />
restartujemy serwer:<br />
<br />
/etc/init.d/httpd restart<br />
<br />
i cieszymy sie z posiadania imagemagick :D</div>Fotexhttps://wiki.opzsgu.pl/index.php?title=Jak_usun%C4%85%C4%87_z_unity_(linux_mint)_wyszukiwanie_plik%C3%B3w_%3F&diff=1074Jak usunąć z unity (linux mint) wyszukiwanie plików ?2012-02-22T16:49:56Z<p>Fotex: </p>
<hr />
<div>Unity posiada miłą opcję pozwalającą na wyszukiwanie programów, poprzez wpisanie ich nazwy po otwarciu apletu...<br />
Domyślnie aktywne jest również wyszukiwanie plików... oraz wczytanie ich miniaturek... co w pewnych okolicznościach może doprowadzić do sromotnej klęski!!<br />
<br />
Aby zapobiec temu należy:<br />
<br />
<pre><br />
apt-get remove unity-file-plugin <br />
</pre><br />
<br />
<br />
<br />
<br />
[[Category:Ubuntu]]</div>Fotexhttps://wiki.opzsgu.pl/index.php?title=Jak_zainstalowac_java_jre_na_debian_squezze&diff=1030Jak zainstalowac java jre na debian squezze2011-11-25T14:34:05Z<p>Fotex: </p>
<hr />
<div>Po instalacji w systemie nie znajdują się informacje o repo javy<br />
w tym celu należy dodać informacje o nich do pliku '''sources.list'''<br />
<br />
w tym celu wykonujemy polecenie<br />
<br />
'''nano /etc/apt/sources.list'''<br />
<br />
i dodajemy linie poniżej<br />
<pre><br />
deb http://ftp.us.debian.org/debian/ squeeze main non-free<br />
<br />
deb http://backports.debian.org/debian-backports squeeze-backports main contrib<br />
deb-src http://backports.debian.org/debian-backports squeeze-backports main contrib<br />
</pre><br />
<br />
<br />
kolejnym krokiem jest aktualizacja listy dostępnych źródeł przez wydanie polecenia<br />
<br />
'''apt-get update'''<br />
<br />
ostatnim krokiem jest instalacja javy poleceniem<br />
<br />
'''apt-get install sun-java6-jre'''</div>Fotexhttps://wiki.opzsgu.pl/index.php?title=Jak_zainstalowac_java_jre_na_debian_squezze&diff=1029Jak zainstalowac java jre na debian squezze2011-11-25T14:33:44Z<p>Fotex: </p>
<hr />
<div>Po instalacji w systemie nie znajdują się informacje o repo javy<br />
w tym celu należy dodać informacje o ich do pliku '''sources.list'''<br />
<br />
w tym celu wykonujemy polecenie<br />
<br />
'''nano /etc/apt/sources.list'''<br />
<br />
i dodajemy linie poniżej<br />
<pre><br />
deb http://ftp.us.debian.org/debian/ squeeze main non-free<br />
<br />
deb http://backports.debian.org/debian-backports squeeze-backports main contrib<br />
deb-src http://backports.debian.org/debian-backports squeeze-backports main contrib<br />
</pre><br />
<br />
<br />
kolejnym krokiem jest aktualizacja listy dostępnych źródeł przez wydanie polecenia<br />
<br />
'''apt-get update'''<br />
<br />
ostatnim krokiem jest instalacja javy poleceniem<br />
<br />
'''apt-get install sun-java6-jre'''</div>Fotexhttps://wiki.opzsgu.pl/index.php?title=Mysql_between_wyszukiwanie_rekord%C3%B3w_z_podanego_zakresu&diff=1003Mysql between wyszukiwanie rekordów z podanego zakresu2011-11-14T20:03:02Z<p>Fotex: </p>
<hr />
<div>Aby wyszukać rekordy w bazie danych z zadanego przedziału czasowego należy skorzystać w zapytaniu z funkcji BETWEEN<br />
<br />
zwraca ona rekordy spełniające warunek zakresu jaki został zadany.<br />
<br />
Można ja wykorzystać do wyświetlenia rekordów zawierających użytkowników którzy się zarejestrowali w okresie od do<br />
<br />
Przykład<br />
<br />
SELECT * FROM Profiles WHERE DateReg BETWEEN "2011-07-01" AND "2011-09-30"<br />
<br />
zapytanie zwróci nam rekordy z tabeli Profiles gdzie data rejestracji zawiera się w okresie od 2011-07-01 do 2011-09-30<br />
<br />
Ważne aby tabele z datą na jakich będziemy operować miały przypisany typ datetime ,date bądż timestamp od tego zależy w jakiej formie będziemy podawać wartość początkowa i graniczną</div>Fotexhttps://wiki.opzsgu.pl/index.php?title=Mysql_between_wyszukiwanie_rekord%C3%B3w_z_podanego_zakresu&diff=1002Mysql between wyszukiwanie rekordów z podanego zakresu2011-11-14T20:01:59Z<p>Fotex: Utworzył nową stronę „Aby wyszukać rekordów w bazie danych z zadanego przedziału czasowego należy skorzystać w zapytaniu z funkcji BETWEEN zwraca ona rekordy spełniające warunek zakr...”</p>
<hr />
<div>Aby wyszukać rekordów w bazie danych z zadanego przedziału czasowego należy skorzystać w zapytaniu z funkcji BETWEEN<br />
<br />
zwraca ona rekordy spełniające warunek zakresu jaki został zadany.<br />
<br />
Można ja wykorzystać do wyświetlenia rekordów zawierających użytkowników którzy się zarejestrowali w okresie od do<br />
<br />
Przykład<br />
<br />
SELECT * FROM Profiles WHERE DateReg BETWEEN "2011-07-01" AND "2011-09-30"<br />
<br />
zapytanie zwróci nam rekordy z tabeli Profiles gdzie data rejestracji zawiera się w okresie od 2011-07-01 do 2011-09-30<br />
<br />
Ważne aby tabele z data na jakich będziemy operować miały przypisany typ datetime ,date bądż timestamp od tego zależy w jakiej formie będziemy podawać wartość początkowa i graniczną</div>Fotexhttps://wiki.opzsgu.pl/index.php?title=Jak_pobra%C4%87_okre%C5%9Blon%C4%85_ilo%C5%9B%C4%87_znak%C3%B3w_z_ko%C5%84ca_ci%C4%85gu&diff=983Jak pobrać określoną ilość znaków z końca ciągu2011-11-06T17:12:39Z<p>Fotex: </p>
<hr />
<div>Czasem potrzebujemy pobrać określona ilość znaków z końca ciągu w celu choćby odmiany przez przypadki.<br />
<br />
Możemy wykorzystać do tego funkcje '''substr''' która potrafi również przyjmować argumenty ujemne :)<br />
<br />
<br />
Przykład wykorzystania do zmiany nazwiska na żenskie.<br />
<br />
<source lang="php"><br />
function nazwisko_zenskie($wartosc){<br />
$koncowka = substr($wartosc, -3);<br />
if($koncowka == 'ski'){<br />
$przetworzone = str_replace($koncowka, "", $wartosc);<br />
$nazwisko = ''.$przetworzone.'ska'<br />
return $nazwisko;<br />
}else{<br />
return $wartosc;<br />
}<br />
<br />
}<br />
</source><br />
<br />
Opis:<br />
<br />
Funkcja przyjmuje jako parametr na przykład nazwisko Tarkowski<br />
<br />
następnie funkcją substr sprawdzamy czy dany ciąg nie zawiera ostatnich 3 znaków o treści "ski". Oznacza to że nazwisko jest w formie męskiej.<br />
<br />
Na kolejnym etapie jeśli ciąg je zawiera to funkcją preg_replace usuwamy je z ciągu i na koniec tworzymy żeńską odmianę przez dodanie "ska" na końcu tego co pozostało po osunięciu "ski".<br />
<br />
W przypadku gdy ciąg nie ma formy męskiej funkcja zwraca "pierwotną" wersje spowrotem<br />
<br />
[[Category:PHP]]</div>Fotexhttps://wiki.opzsgu.pl/index.php?title=Jak_pobra%C4%87_okre%C5%9Blon%C4%85_ilo%C5%9B%C4%87_znak%C3%B3w_z_ko%C5%84ca_ci%C4%85gu&diff=980Jak pobrać określoną ilość znaków z końca ciągu2011-11-06T17:09:51Z<p>Fotex: Utworzył nową stronę „Czasem potrzebujemy pobrać określona ilość znaków z końca ciągu w celu choćby odmiany przez przypadki. Możemy wykorzystać do tego funkcje '''substr''' która...”</p>
<hr />
<div>Czasem potrzebujemy pobrać określona ilość znaków z końca ciągu w celu choćby odmiany przez przypadki.<br />
<br />
Możemy wykorzystać do tego funkcje '''substr''' która potrafi również przyjmować argumenty ujemne :)<br />
<br />
<br />
Przykład wykorzystania do zmiany nazwiska na żenskie.<br />
<br />
function nazwisko_zenskie($wartosc){<br />
$koncowka = substr($wartosc, -3);<br />
if($koncowka == 'ski'){<br />
$przetworzone = str_replace($koncowka, "", $wartosc);<br />
$nazwisko = ''.$przetworzone.'ska'<br />
return $nazwisko;<br />
}else{<br />
return $wartosc;<br />
}<br />
<br />
}<br />
<br />
Opis:<br />
<br />
Funkcja przyjmuje jako parametr na przykład nazwisko Tarkowski<br />
<br />
następnie funkcją substr sprawdzamy czy dane ciąg nie zawiera ostatnich 3 znaków o treści "ski". Oznacza to że nazwisko jest w formie męskiej.<br />
<br />
Na kolejnym etapie jeśli ciąg je zawiera to funkcją preg_replace usuwamy je z ciągu i na koniec tworzymy żeńską odmianę przez dodanie "ska" na końcu tego co pozostało po osunięciu "ski".<br />
<br />
W przypadku gdy ciąg nie ma formy męskiej funkcja zwraca "pierwotną" wersje spowrotem</div>Fotexhttps://wiki.opzsgu.pl/index.php?title=Generowanie_losowej_daty&diff=963Generowanie losowej daty2011-11-06T16:36:40Z<p>Fotex: Utworzył nową stronę „Bardzo prostym sposobem na wygenerowanie losowej daty z podanego zakresu jest wykorzystanie funkcji '''rand''' języka PHP Jest to pseudolosowy generator liczb Funkcj...”</p>
<hr />
<div>Bardzo prostym sposobem na wygenerowanie losowej daty z podanego zakresu jest wykorzystanie funkcji '''rand''' języka PHP<br />
<br />
Jest to pseudolosowy generator liczb<br />
<br />
Funkcja rand przyjmuje dwa parametry czyli wartosć startową i końcową z jakiej następuje losowanie.<br />
<br />
Chcąc wykorzystać te funkcje do generowania losowej daty należy korzystać z zapisu daty w formacie timestamp<br />
<br />
gdyż rand przyjmuje tylko wartości liczbowe.<br />
<br />
Poniżej funkcja wykorzystująca to rozwiązanie<br />
<br />
function urodziny(){<br />
$timestamp = rand(157766400,725846400);<br />
return date("Y-m-d",$timestamp);<br />
}<br />
<br />
Jak widzimy na przykładzie wylosowana wartość jest poddawana przekształceniu przez funkcje '''date''' w celu uzyskania <br />
<br />
daty w formacie bardziej przyjaznej do wyświetlenia w aplikacji czyli YYYY-MM-DD</div>Fotexhttps://wiki.opzsgu.pl/index.php?title=Losowanie_rekordu_z_tablicy&diff=958Losowanie rekordu z tablicy2011-11-06T16:27:59Z<p>Fotex: Utworzył nową stronę „Nie raz zachodzi potrzeba wylosowania rekordu z tablicy. W tym celu możemy wykorzystać systemowa funkcję języka PHP o nazwie '''array_rand''' Poniżej przykład ...”</p>
<hr />
<div>Nie raz zachodzi potrzeba wylosowania rekordu z tablicy.<br />
<br />
W tym celu możemy wykorzystać systemowa funkcję języka PHP o nazwie '''array_rand''' <br />
<br />
Poniżej przykład funkcji losującej płeć wykorzystującą właśnie to rozwiązanie<br />
<br />
<br />
function losuj_plec(){<br />
$tablica = Array('m'=>1, 'k'=>2);<br />
return array_rand ($tablica, 1);<br />
}<br />
<br />
Jak widzimy funkcja array_rand przyjmuje dwa parametry pierwszy to tablica z jakiej następuje losowanie<br />
<br />
druga zaś to ilość obiektów jaka zostanie z niej wylosowana... w tym przypadku to 1</div>Fotexhttps://wiki.opzsgu.pl/index.php?title=Postfix_a_zablokowanie_portu_25&diff=932Postfix a zablokowanie portu 252011-09-08T16:55:06Z<p>Fotex: Utworzył nową stronę „Standardowo po instalacji postfix deamon smtp nasłuchuje na porcie 25 jak wiadomo prty 25 zostaly zablokowane przez tpsa co uniemozliwia wyslanie poczty. aby to napr...”</p>
<hr />
<div>Standardowo po instalacji postfix deamon smtp nasłuchuje na porcie 25<br />
<br />
jak wiadomo prty 25 zostaly zablokowane przez tpsa co uniemozliwia wyslanie poczty.<br />
<br />
aby to naprawic i umozliwic wysylke po porcie 587 nalezy edytowac plik master.cf w /etc/postfix/ <br />
<br />
nalezy zamienic <br />
<br />
<br />
smtp inet n - - - - smtpd<br />
#submission inet n - - - - smtpd<br />
# -o smtpd_tls_security_level=encrypt<br />
# -o smtpd_sasl_auth_enable=yes<br />
# -o smtpd_client_restrictions=permit_sasl_authenticated,reject<br />
# -o milter_macro_daemon_name=ORIGINATING<br />
<br />
<br />
na<br />
<br />
<br />
#smtp inet n - - - - smtpd<br />
submission inet n - - - - smtpd<br />
# -o smtpd_tls_security_level=encrypt<br />
-o smtpd_sasl_auth_enable=yes<br />
-o smtpd_client_restrictions=permit_sasl_authenticated,reject<br />
-o milter_macro_daemon_name=ORIGINATING<br />
<br />
<br />
na koniec restartujemy postfix (/etc/init.d/postfix restart) i mozemy sie cieszyc wysyłka na porcie 587</div>Fotexhttps://wiki.opzsgu.pl/index.php?title=Problem_z_apt-get_/usr/local/lib/libz.so.1:_no_version_information&diff=900Problem z apt-get /usr/local/lib/libz.so.1: no version information2011-07-27T13:01:00Z<p>Fotex: Utworzył nową stronę „Próba instalacji za pomoca apt'a lub aptitude na systemie debian 6 64 bit powoduje wyswietlenie komunikatu aptitude: /usr/local/lib/libz.so.1: no version information...”</p>
<hr />
<div>Próba instalacji za pomoca apt'a lub aptitude na systemie debian 6 64 bit powoduje wyswietlenie komunikatu<br />
<br />
aptitude: /usr/local/lib/libz.so.1: no version information available (required by /usr/lib/libapt-pkg.so.4.10)<br />
/usr/lib/apt/methods/http: /usr/local/lib/libz.so.1: no version information available (required by /usr/lib/libapt-pkg.so.4.10)<br />
<br />
<br />
trudno mi powiedzieć z czego on wynika jednak powodem jest złe dowiazanie biblioteki<br />
<br />
w celu naprawy wykonujemy nastepujace komendy:<br />
<br />
rm /usr/local/lib/libz.so.1.2.3<br />
rm /usr/local/lib/libz.so.1<br />
ln -s /usr/lib/libz.so.1.2.3.4 /usr/local/lib/libz.so.1</div>Fotexhttps://wiki.opzsgu.pl/index.php?title=Sprawdzanie_czy_aplikacja_jest_uruchomiona_i_ponowne_uruchomienie_w_przypadku_awarii&diff=865Sprawdzanie czy aplikacja jest uruchomiona i ponowne uruchomienie w przypadku awarii2011-03-31T12:16:31Z<p>Fotex: Utworzył nową stronę „Czesto mamy zamiar uruchamiac aplikacje przez nas napisane jednak z różnych przyczyn może nastąpić crash. Czasem opisanie wszystkich mozliwych awarii w skrypcie mo...”</p>
<hr />
<div>Czesto mamy zamiar uruchamiac aplikacje przez nas napisane jednak z różnych przyczyn może nastąpić crash. Czasem<br />
opisanie wszystkich mozliwych awarii w skrypcie moze zajmowac wiecej niz same jego działanie.<br />
<br />
Warto zatem napisac aplikacje która w okreslonych odstepach czasu bedzie sprawdzac czy skrypt jest uruchomiony i w wypadku zatrzymania uruchomi go ponownie.<br />
<br />
Ponieżej przykładowa aplikacja:<br />
<source lang="bash"><br />
#!/bin/bash<br />
while true; do<br />
clear<br />
aplikacja=`ps -l -a | grep grabber`<br />
if [ "$aplikacja" != "" ]<br />
then<br />
echo "Aplikacja jest uruchomiona"<br />
<br />
else <br />
<br />
echo "Aplikacja nie jest uruchomiona"<br />
./grabber<br />
fi<br />
<br />
sleep 5<br />
done<br />
</source><br />
<br />
Aplikacja sprawdza czy na liscie procesów znajduje sie nasza aplikacja i w przypadku gdy jej nie ma to ja uruchamia.</div>Fotexhttps://wiki.opzsgu.pl/index.php?title=Jak_pobra%C4%87_aktualny_adres_url_u%C5%BCytkownika_z_paska_przegl%C4%85darki%3F_(php)&diff=817Jak pobrać aktualny adres url użytkownika z paska przeglądarki? (php)2011-01-10T23:21:33Z<p>Fotex: </p>
<hr />
<div>Wielokrotnie zachodzi potrzeba pobraniu aktualnego adresu pod jakim się znajduje użytkownik naszego serwisu<br />
<br />
W tym celu należy skorzystać ze zmiennej systemowej '''$_SERVER['REQUEST_URI']'''<br />
<br />
<br />
zwraca ona szczegółowy adres aktualnej strony w formie '''folder/plik.php?zmienna=wartość'''<br />
<br />
W moim przypadku zmienna zostala wykorzystana do zablokowania wyswietlania pola wyszukiwania tylko dla strony index.php<br />
<br />
Przykładowy kod:<br />
<br />
<pre><br />
if ($_SERVER['REQUEST_URI'] == "/panel/index.php"){<br />
echo "<form action='' method='POST'style='display:inline;'><input name='szukaj'type='text'><input type='submit' value='Szukaj'></form>";<br />
}else{<br />
echo "<center><a href='index.php'><b>Szukaj</b></a></center><br>";<br />
}<br />
</pre></div>Fotexhttps://wiki.opzsgu.pl/index.php?title=Jak_pobra%C4%87_aktualny_adres_url_u%C5%BCytkownika_z_paska_przegl%C4%85darki%3F_(php)&diff=816Jak pobrać aktualny adres url użytkownika z paska przeglądarki? (php)2011-01-10T23:20:06Z<p>Fotex: Utworzył nową stronę „Wielokrotnie zachodzi potrzeba pobraniu aktualnego adresu pod jakim się znajduje użytkownik naszego serwisu W tym celu należy skorzystać ze zmiennej systemowej '''...”</p>
<hr />
<div>Wielokrotnie zachodzi potrzeba pobraniu aktualnego adresu pod jakim się znajduje użytkownik naszego serwisu<br />
<br />
W tym celu należy skorzystać ze zmiennej systemowej '''$_SERVER['REQUEST_URI']'''<br />
<br />
<br />
zwraca ona szczegółowy adres aktualnej strony w formie '''folder/plik.php?zmienna=wartość'''<br />
<br />
W moim przypadku zmienna zostala wykorzystana do zablokowania wyswietlania pola wyszukiwania tylko dla strony index.php<br />
<br />
Przykładowy kod:<br />
<br />
<br />
if ($_SERVER['REQUEST_URI'] == "/panel/index.php"){<br />
echo "<form action='' method='POST'style='display:inline;'><input name='szukaj'type='text'><input type='submit' value='Szukaj'></form>";<br />
}else{<br />
echo "<center><a href='index.php'><b>Szukaj</b></a></center><br>";<br />
}</div>Fotexhttps://wiki.opzsgu.pl/index.php?title=Obs%C5%82uga_poczty_gmail_we_wlasnej_domenie_a_atomdns&diff=750Obsługa poczty gmail we wlasnej domenie a atomdns2010-11-02T19:14:36Z<p>Fotex: Utworzył nową stronę „W celu konfiguracji poczty gmail we własnej domenie należy skonfigurować rekordy mx dla domeny. Jak to zrobić? należy dodać serwery google do rekordu mx(najlepie...”</p>
<hr />
<div>W celu konfiguracji poczty gmail we własnej domenie należy skonfigurować rekordy mx dla domeny.<br />
Jak to zrobić?<br />
<br />
należy dodać serwery google do rekordu mx(najlepiej conajmnie dwa w celu zapewnienia bezawaryjnosci)<br />
<br />
Przykładowy wpis wyglada nastepujaco<br />
<br />
domena.pl 300 1:ASPMX.L.GOOGLE.COM.<br />
<br />
gdzie domena.pl to oczywiscie nazwa naszej domeny<br />
300 to TLL czyli czas życia rekordu<br />
1:ASPMX.L.GOOGLE.COM. to url serwera poczty google gdzie 1 to priorytet<br />
<br />
Należy pamietać ze konfigurujac gmail dla własnej domeny serwery google musza mniec priorytet przed innymi które skonfigurowalismy<br />
<br />
Dodawanie kolejnego serwera analogicznie jak wyżej. Dodajemy priorytet nr 2 dla kolejnego serwera z listy dostępnych</div>Fotexhttps://wiki.opzsgu.pl/index.php?title=Pobieranie_rekord%C3%B3w_z_bazy_mysql_a_wydajno%C5%9B%C4%87-_RPAD&diff=739Pobieranie rekordów z bazy mysql a wydajność- RPAD2010-10-15T16:06:52Z<p>Fotex: Utworzył nową stronę „Niejednokrotnie konieczne jest pobranie rekordu z bazy i skrócenie go przed wyświetleniem do określonej ilości znaków. Zazwyczaj wykonuje się to za pomocą '''sub...”</p>
<hr />
<div>Niejednokrotnie konieczne jest pobranie rekordu z bazy i skrócenie go przed wyświetleniem do określonej ilości znaków.<br />
Zazwyczaj wykonuje się to za pomocą '''substr''' jednak ma to jedną wadę.Konieczne jest pobranie całego<br />
rekordu i dopiero wykonanie na na nim operacji skracania co znacznie zamula serwer.<br />
<br />
Znacznie bardziej eleganckim rozwiazaniem jest skorzystanie z Mysql-owej funkcji '''RPAD''' która pozwala nam pobrać z bazy określona ilość znaków z rekordu.<br />
<br />
Przykład zastosowania:<br />
SELECT RPAD (strona , 10 , '') FROM 'strony_komentarze' as test</div>Fotexhttps://wiki.opzsgu.pl/index.php?title=Instalacja_i_uruchomienie_(mod_rewrite)_w_apache2&diff=725Instalacja i uruchomienie (mod rewrite) w apache22010-10-12T17:00:43Z<p>Fotex: Utworzył nową stronę „Okazuje sie że samo właczenie obsługi mod_rewrite (modułu) nie gwarantuje jeszcze powodzenia. Aby właczony przez nas modul zaczął funkcjinować należy jeszcze...”</p>
<hr />
<div>Okazuje sie że samo właczenie obsługi mod_rewrite (modułu) nie gwarantuje jeszcze <br />
powodzenia.<br />
<br />
Aby właczony przez nas modul zaczął funkcjinować należy jeszcze zmienić ustawienia w apache edytujac plik konfiguracyjny<br />
i zmieniajac wpis ;<br />
AllowOverride No<br />
<br />
na ;<br />
<br />
AllowOverride All<br />
<br />
po tym zabiegu i restarcie deamona apache mod_rewrite zacznie normalnie pracować</div>Fotexhttps://wiki.opzsgu.pl/index.php?title=Dynamiczna_zmiana_wysokosci_IFRAME_-_rozwiazanie_problemu&diff=715Dynamiczna zmiana wysokosci IFRAME - rozwiazanie problemu2010-08-23T15:19:19Z<p>Fotex: </p>
<hr />
<div>Nie raz nie dwa korzystamy z IFRAME aby wyswietlić na stronie zewnetrzny dokument<br />
i natrafiamy na problem.<br />
Okazuje się że wszystko jest super do momentu gdy strona pobierana do ramki jest o stałej wysokości, bo<br />
ustalamy sobie na sztywno wartość HEIGHT dla IFRAME i problem przewijania strony w pionie znika.<br />
<br />
Co jednak gdy pobierany dokument ma różna wysokość w zalezności od akcji na nim wykonanej?<br />
Niestety ale jedynym rozwiazaniem jest zastosowanie JavaScript do generowania dynamicznie skalowanej w pionie ramki.<br />
<br />
oto przykład zastosowania :<br />
<br />
<pre><script language="JavaScript"><br />
function DynamicznyIframe() {<br />
<br />
var rozmiar=<br />
document.getElementById(\'ramka\').contentWindow.<br />
document.body.scrollHeight;<br />
<br />
document.getElementById(\'ramka\').height=<br />
rozmiar; <br />
}<br />
</script><br />
<iframe onLoad="DynamicznyIframe();" src="link do dokumentu" width="100%" height="100%"<br />
scrolling="no" frameborder="0" scroll="auto" id="ramka" marginwidth="0"<br />
marginheight="0" ></iframe></pre></div>Fotexhttps://wiki.opzsgu.pl/index.php?title=Dynamiczna_zmiana_wysokosci_IFRAME_-_rozwiazanie_problemu&diff=714Dynamiczna zmiana wysokosci IFRAME - rozwiazanie problemu2010-08-23T15:17:45Z<p>Fotex: </p>
<hr />
<div>Nie raz nie dwa korzystamy z IFRAME aby wyswietlić na stronie zewnetrzny dokument<br />
i natrafiamy na problem.<br />
Okazuje się że wszystko jest super do momentu gdy strona pobierana do ramki jest o stałej wysokości, bo<br />
ustalamy sobie na sztywno wartość HEIGHT dla IFRAME i problem przewijania strony w pionie znika.<br />
<br />
Co jednak gdy pobierany dokument ma różna wysokość w zalezności od akcji na nim wykonanej?<br />
Niestety ale jedynym rozwiazaniem jest zastosowanie JavaScript do generowania dynamicznie skalowanej w pionie ramki.<br />
<br />
oto przykład zastosowania :<br />
<br />
<script language="JavaScript"><br />
function DynamicznyIframe() {<br />
<br />
var rozmiar=<br />
document.getElementById(\'ramka\').contentWindow.<br />
document.body.scrollHeight;<br />
<br />
document.getElementById(\'ramka\').height=<br />
rozmiar; <br />
}<br />
</script><br />
<iframe onLoad="DynamicznyIframe();" src="link do dokumentu" width="100%" height="100%"<br />
scrolling="no" frameborder="0" scroll="auto" id="ramka" marginwidth="0"<br />
marginheight="0" ></iframe></div>Fotexhttps://wiki.opzsgu.pl/index.php?title=Dynamiczna_zmiana_wysokosci_IFRAME_-_rozwiazanie_problemu&diff=713Dynamiczna zmiana wysokosci IFRAME - rozwiazanie problemu2010-08-23T15:16:58Z<p>Fotex: Utworzył nową stronę „Nie raz nie dwa korzystamy z IFRAME aby wyswietlić na stronie zewnetrzny dokument i natrafiamy na problem. Okazuje się że wszystko jest super do momentu gdy strona p...”</p>
<hr />
<div>Nie raz nie dwa korzystamy z IFRAME aby wyswietlić na stronie zewnetrzny dokument<br />
i natrafiamy na problem.<br />
Okazuje się że wszystko jest super do momentu gdy strona pobierana do ramki jest o stałej wysokości, bo<br />
ustalamy sobie na sztywno wartość HEIGHT dla IFRAME i problem przewijania strony w pionie znika.<br />
<br />
Co jednak gdy pobierany dokument ma różna wysokość w zalezności od akcji na nim wykonanej?<br />
Niestety ale jedynym rozwiazaniem jest zastosowanie JavaScript do generowania dynamicznie skalowanej w pionie ramki.<br />
<br />
oto przykład zastosowania :<br />
<br />
'''<script language="JavaScript"><br />
function DynamicznyIframe() {<br />
<br />
var rozmiar=<br />
document.getElementById(\'ramka\').contentWindow.<br />
document.body.scrollHeight;<br />
<br />
document.getElementById(\'ramka\').height=<br />
rozmiar; <br />
}<br />
</script><br />
<iframe onLoad="DynamicznyIframe();" src="link do dokumentu" width="100%" height="100%"<br />
scrolling="no" frameborder="0" scroll="auto" id="ramka" marginwidth="0"<br />
marginheight="0" ></iframe>'''</div>Fotexhttps://wiki.opzsgu.pl/index.php?title=Direct_Admin_-_Brak_odpowiedzi_na_porcie_2222_a_interfejs_sieciowy&diff=677Direct Admin - Brak odpowiedzi na porcie 2222 a interfejs sieciowy2010-08-13T21:19:49Z<p>Fotex: </p>
<hr />
<div>W trakcie instalacji Direct Admin na Debianie doszło do niecodziennego zdarzenia.<br />
Po poprawnej instalacji okazuje sie że nie mozna otworzyć <br />
panelu w przegladarce na porcie 2222 który jest domyslnym przy instalacji.<br />
<br />
Wszystko wskazywało na problemy z firewallem jednak po przegladnieciu<br />
blokowanych portów okazuje sie że powinno dzialać prawidłowo.<br />
Wspomnieć jeszcze ze instalacja przepiegała na serwerze VPS pod kontrolą systemu Virtuozzo.<br />
<br />
Moje dalsze poszukiwania skłoniły mnie do przeglądniecia pliku konfiguracyjnego <br />
Direct Admin (/usr/local/directadmin/conf/directadmin.conf)<br />
Ku mojemu zdziwieniu i z niewiadomych mi przyczyn direct admin domyslnie ustawił interfejs sieciowy jako '''eth0'''<br />
jednak przy wirtualizacji prawidłowa wartość powinna byc '''venet0:0'''<br />
<br />
Przeladowanie deamona directadmin i wprowadzenie nowych ustawien z pliku konfiguracyjnego naprawiło cały problem</div>Fotexhttps://wiki.opzsgu.pl/index.php?title=Direct_Admin_-_Brak_odpowiedzi_na_porcie_2222_a_interfejs_sieciowy&diff=676Direct Admin - Brak odpowiedzi na porcie 2222 a interfejs sieciowy2010-08-13T21:19:16Z<p>Fotex: </p>
<hr />
<div>W trakcie instalacji Direct Admin na Debianie doszło do niecodziennego zdarzenia.Po poprawnej instalacji okazuje sie że nie mozna otworzyć <br />
panelu w przegladarce na porcie 2222 który jest domyslnym przy instalacji.Wszystko wskazywało na problemy z firewallem jednak po przegladnieciu<br />
blokowanych portów okazuje sie że powinno dzialać prawidłowo.<br />
Wspomnieć jeszcze ze instalacja przepiegała na serwerze VPS pod kontrolą systemu Virtuozzo.<br />
<br />
Moje dalsze poszukiwania skłoniły mnie do przeglądniecia pliku konfiguracyjnego Direct Admin (/usr/local/directadmin/conf/directadmin.conf)<br />
Ku mojemu zdziwieniu i z niewiadomych mi przyczyn direct admin domyslnie ustawił interfejs sieciowy jako '''eth0'''<br />
jednak przy wirtualizacji prawidłowa wartość powinna byc '''venet0:0'''<br />
<br />
Przeladowanie deamona directadmin i wprowadzenie nowych ustawien z pliku konfiguracyjnego naprawiło cały problem</div>Fotexhttps://wiki.opzsgu.pl/index.php?title=Direct_Admin_-_Brak_odpowiedzi_na_porcie_2222_a_interfejs_sieciowy&diff=675Direct Admin - Brak odpowiedzi na porcie 2222 a interfejs sieciowy2010-08-13T21:12:53Z<p>Fotex: Utworzył nową stronę „W trakcie instalacji Direct Admin na Debianie doszło do niecodziennego zdarzenia.Po poprawnej instalacji okazuje sie że nie mozna otworzyć panelu w przegladarce na …”</p>
<hr />
<div>W trakcie instalacji Direct Admin na Debianie doszło do niecodziennego zdarzenia.Po poprawnej instalacji okazuje sie że nie mozna otworzyć <br />
panelu w przegladarce na porcie 2222 który jest domyslnym przy instalacji.Wszystko wskazywało na problemy z firewallem jednak po przegladnieciu<br />
blokowanych portów okazuje sie że powinno dzialać prawidłowo.<br />
Wspomnieć jeszcze ze instalacja przepiegała na serwerze VPS pod kontrolą systemu Virtuozzo.<br />
<br />
Moje dalsze poszukiwania skłoniły mnie do przeglądniecia pliku konfiguracyjnego Direct Admisn (/usr/local/directadmin/conf/directadmin.conf)<br />
Ku mojemu zdziwieniu i z niewiadomych mi przyczyn direct admin domyslnie ustawił interfej</div>Fotex