Knihovna pro ukládání session proměnných a dalších údajů využívá
databázi. Použít můžeme v podstatě libovolnou (SQL) databázi, pro
kterou existuje v PHP podpora. Pro každou aplikaci, která bude
využívat PHPLIB bychom měli vytvořit zvláštní databázi. PHPLIB v ní
vytvoří dvě tabulky active_sessions
a
auth_user
. Tato jména se pravděpodobně nekryjí s jmény
našich tabulek, a proto je můžeme umístit do stejné databáze jako data
naší aplikace. (Kdyby se přeci jen náhodou kryla, není žádný problém
je změnit.)
Dále budeme předpokládat, že vyvíjíme aplikace pro internetový
obchod a naše databáze se jmenuje ishop
. V adresáři
stuff
distribuce PHPLIB nalezneme soubory s příkazy
jazyka SQL, které dokáží pro různé databáze (MySQL, MS SQL,
PostgreSQL, Sybase, Oracle, ODBC, ...) vytvořit v databázi již zmíněné
tabulky active_sessions
a auth_user
.
Pro potřeby PHPLIB musíme v databázi vytvořit uživatele, který bude
mít k oběma tabulkám plný přístup (práva SELECT, INSERT, UPDATE a
DELETE). Postup vytvoření uživatele a přidělení přístupových práv se
liší databázi od databáze. My budeme předpokládat, že takový uživatel
se jmenuje phplib
a heslo má octopus
.
Poté co rozchodíme databázi, musíme na vhodné místo zkopírovat a
upravit samotné soubory knihovny PHPLIB. Do nějakého adresáře
zkopírujeme vše, co je v podadresáři php
distribuce
PHPLIB. Nejlepší je asi vytvořit si pro soubory adresář
phplib
, který je na stejné úrovni jako adresář pro HTML
dokumenty a skripty.
Cestu k adresáři s knihovnou PHPLIB musíme přidat mezi cesty, kde
PHP automaticky hledá soubory. V souboru php3.ini
,
případně v souboru .htaccess
, pokud používáme Apache a
modul PHP3, musíme upravit obsah direktivy
include_path
:
include_path = .:/cesta/k/phplib
resp. ve Windows na
include_path = ".;c:/cesta/k/phplib"
Pokud direktivu nastavujeme v konfiguračních souborech Apache,
musíme místo ní použít php3_include_path
.
Soubory PHPLIB by měly být mimo strom WWW dokumentů, protože
obsahují některé citlivé údaje -- např. jméno a heslo pro přístup do
databáze. Někdy však nemůžeme knihovnu umístit mimo strom dokumentů
(například u některých providerů, kteří na své servery neumožňují
přístup pomocí ssh, ale pouze pomocí FTP). V tomto případě umístíme
soubory také do adresáře phplib
, ale musíme nastavit
WWW-server tak, aby v něm všechny soubory (přípony .php3
,
.inc
a .ihtml
) interpretoval pomocí PHP. Tak
se nestane, že by někdo mohl neoprávněně něco číst. Tato nastavení
můžeme pro server Apache provést opět pomocí souboru
.htaccess
. Stačí, když do něj přidáme řádku:
AddType application/x-httpd-php3 .php3 .php .inc .ihtml
Pokud používáme jinou databázi než MySQL, musíme nyní zeditovat
soubor phplib/prepend.php3
. Ten obsahuje příkaz:
require("db_mysql.inc"); /* Change this to match your database. */
My jej opravíme tak, aby načítal soubor odpovídající používané
databázi. Pro ODBC použijeme například
db_odbc.inc
. Podporované databáze zjistíme snadno --
stačí se podívat na soubory v adresáři phplib
, které
začínají na db_
.
Soubor prepend.php3
je potřeba načíst na začátku každé
stránky, která využívá funkčnost knihovny PHPLIB. To můžeme provést
buď vždy ručně pomocí příkazu require
, nebo použít
konfigurační direktivu auto_prepend = prepend.php3
, která
způsobí automatické načítaní skriptu.
Pokud jsme úspěšně nainstalovali PHPLIB, můžeme začít využívat její funkce. Základní funkcí jsou session proměnné.