|
|
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.
|
session_start
(PHP 4, PHP 5) session_start -- Inicjalizuj dane sesji
Opisbool session_start (
void )
session_start() tworzy sesję lub
wznawia bieżącą na podstawie aktualnego identyfikatora sesji
przekazanego przy wywołaniu, poprzez metodę GET, POST lub
ciasteczko.
Jeśli chcesz, aby sesja była nazwana, przed wywołaniem
session_start() musisz wywołać session_name().
Ta funkcja zawsze zwraca wartość TRUE.
Notatka: Jeśli używasz sesji opartych o
ciasteczka, to session_start() musi
być wywołane przed wysłaniem jakichkolwiek danych do
przeglądarki.
Przykład 1. Przykład sesji: page1.php
<?php // page1.php
session_start();
echo 'Witaj na stronie #1';
$_SESSION['kolor'] = 'zielony'; $_SESSION['zwierze'] = 'kot'; $_SESSION['czas'] = time();
// Działa jeśli ciasteczko sesyjne zostało zaakceptowane
echo '<br /><a href="manualphp-page2.php">strona 2</a>';
// Lub może przekaż ciasteczko sesyjne, jeśli to konieczne
echo '<br /><a href="manualphp-page2.php?' . SID . '">strona 2</a>';
?> |
|
Po odwiedzeniu strony page1.php,
druga strona, page2.php będzie
magicznie zawierała dane sesji. W rozdziale Sesje znajduje się więcej informacji na
temat propagowania
identyfikatora sesji, gdzie można znaleźć na przykład
wytłumaczenie co zawiera stała SID.
Przykład 2. Przykład sesji: page2.php
<?php // page2.php
session_start();
echo 'Witaj na stronie #2<br />';
echo $_SESSION['kolor']; // zielony echo $_SESSION['zwierze']; // not
echo date('Y m d H:i:s', $_SESSION['time']);
// Tu można wstawić SID, podobnie jak to był na page1.php
echo '<br /><a href="manualphp-page1.php">page 1</a>';
?> |
|
W celu stworzenia nazwanej sesji, niezbędne jest wywołanie
funkcji session_name() przed wywołaniem session_start().
session_start() zarejestruje
wewnętrzny uchwyt obsługi wyjścia dla przepisywania URLi jeśli
włączona jest opcja trans-sid. Jeśli
użytkownik używa ob_gzhandler lub
podobne z ob_start(), kolejność uchwytów obsługi
wyjścia jest ważna dla prawidłowego wyjścia. Na przykład,
użytkownik musi zarejestrować ob_gzhandler przed rozpoczęciem sesji.
Notatka: Od PHP 4.3.3, wywołanie session_start() podczas gdy sesja już
została rozpoczęta, spowoduje błąd poziomu E_NOTICE. Drugie rozpoczęcie sesji
zostanie zignorowane.
Patrz także: $_SESSION,
session.auto_start
i session_id().
|