|
|
PHP (angielski akronim rekurencyjny, którego rozwinięcie to PHP Hypertext Preprocessor), pierwotnie nazwany Personal
Home Page - skryptowy język programowania, służący przede wszystkim do tworzenia dynamicznych stron WWW i wykonywany w
tym przypadku po stronie serwera, z możliwością zagnieżdżania w HTML (bądź XHTML). PHP jest podobny w założeniach do
dużo starszego mechanizmu SSI (Server Side Includes), jednak jest w stosunku do SSI nieporównanie bardziej rozbudowany.
Udostępniany jest na zasadach licencji open-source. Jego składnia bazuje na językach C, Java i Perl.
SQL (ang. Structured Query Language) to strukturalny język zapytań używany do tworzenia, modyfikowania baz danych oraz
do umieszczania i pobierania danych z baz danych.
Język SQL jest językiem deklaratywnym. Decyzję o sposobie przechowywania i pobrania danych pozostawia się systemowi
zarządzania bazą danych DBMS.
Jest to język programowania opracowany w latach siedemdziesiątych w firmie IBM. Stał się on standardem w komunikacji z
serwerami relacyjnych baz danych. Wiele współczesnych systemów relacyjnych baz danych używa do komunikacji z
użytkownikiem SQL, dlatego mówi się, że korzystanie z relacyjnych baz danych, to korzystanie z SQL-a.
Apache jest otwartym serwerem HTTP dostępnym dla wielu systemów operacyjnych (m.in. UNIX, GNU/Linux, BSD,
Microsoft Windows). Po angielsku słowo Apache wymawia się epaczi, co brzmi tak samo jak a patchy (server), co było
określeniem tego serwera we wczesnym stadium jego rozwoju w 1995 roku, kiedy był on głównie zbiorem poprawek (patch)
nałożonych na serwer HTTP o nazwie NCSA.
Apache jest najszerzej stosowanym serwerem HTTP w Internecie. W maju 2003 jego udział wśród serwerów wynosił 62%. W
połączeniu z interpreterem języka skryptowego PHP i bazą danych MySQL, Apache stanowi jedno z najczęściej spotykanych
środowisk w firmach oferujących miejsce na serwerach sieciowych.
|
urlencode
(PHP 3, PHP 4, PHP 5) urlencode -- Koduje łańcuch metodą
kodowania URLi
Opisstring urlencode (
string str )
Zwraca łańcuch w którym wszystkie nie alfanumeryczne znaki z
wyjątkiem
zostały zastąpione przez dwie cyfry szesnastkowe
poprzedzone znakiem procenta ( %), a
spacje kodowane są jako znak ( +). To
kodowanie jest takie same jak wykorzystywane przy przesyłaniu
danych z formularzy WWW, tj. takie samo jak w media typie:
application/x-www-form-urlencoded.
Różni się od kodowania z RFC1738 (zobacz rawurlencode()) tym, że z powodów
historycznych, spacje są kodowane jako znak plus (+). Funkcja
ta jest odpowiednia do zakodowania łańcucha używanego w
zapytaniu URL oraz jako zmienna przekazywana do następnej
strony:
Przykład 1. urlencode() przykład
<?php echo '<a href="manualphp-mycgi?foo=', urlencode($userinput), '">';
?> |
|
Notka: Uważaj na zmienne, które mogą zawierać HTML'owe
encje. Rzeczy jak &, © i £ są
przetwarzane przez przeglądarkę i ich aktualna postać jest
używana dalej zamiast porządanej nazwy zmiennej. To jest
oczywisty problem, o którym W3C informuje ludzi od lat.
Referencje są tutaj: http://www.w3.org/TR/html4/appendix/notes.html#h-B.2.2.
PHP obsługuje zmianę separatora argumentów na zalecany przez
W3C średnik poprzez dyrektywę arg_separator .ini. Niestety
większość przeglądarek nie wysyła danych z formularza w
formacie używającym średnik jako separator. Bardziej przenośnym
rozwiązaniem jest użycie & jako separatora zamiast
&. Nie musisz zmieniać PHP'owego arg_separator aby to
uzyskać. Zostaw separator jako &, ale koduj swoje URL'e
używając htmlentities()lub htmlspecialchars().
Przykład 2. urlencode() i htmlentities() przykład
<?php
$query_string = 'foo=' . urlencode($foo) . '&bar=' . urlencode($bar);
echo '<a href="manualphp-mycgi?' . htmlentities($query_string) . '">';
?> |
|
Patrz także: urldecode(), htmlentities(), rawurldecode() i rawurlencode().
|