Professional Documents
Culture Documents
PRZYKADOWY ROZDZIA
SPIS TRECI
KATALOG KSIEK
KATALOG ONLINE
ZAMW DRUKOWANY KATALOG
TWJ KOSZYK
DODAJ DO KOSZYKA
CENNIK I INFORMACJE
ZAMW INFORMACJE
O NOWOCIACH
ZAMW CENNIK
CZYTELNIA
FRAGMENTY KSIEK ONLINE
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl
PHP5. Radocha
z programowania
Autor: Steven Holzner
Tumaczenie: Radosaw Meryk
ISBN: 83-246-0085-X
Tytu oryginau: Spring Into PHP 5
Format: B5, stron: 344
Spis treci
O autorze ......................................................................................... 9
Przedmowa ..................................................................................... 11
Rozdzia 1. Podstawowe wiadomoci o PHP ...................................................... 15
Jak uzyska dostp do PHP? .......................................................................................... 16
Konfiguracja rodowiska programistycznego ................................................................ 18
Pierwszy skrypt PHP ...................................................................................................... 20
Uruchomienie pierwszego skryptu PHP ......................................................................... 22
Co zrobi, jeli nie zadziaa? .......................................................................................... 22
czenie kodu HTML i PHP .......................................................................................... 24
Wywietlanie tekstu ....................................................................................................... 25
Dodatkowe moliwoci wywietlania tekstw ............................................................... 27
Wywietlanie caych dokumentw ................................................................................. 29
Uruchamianie skryptw PHP z wiersza polecenia ......................................................... 30
Zastosowanie komentarzy .............................................................................................. 32
Uchwyty do danych: zmienne ........................................................................................ 34
Przypisywanie wartoci do zmiennych ........................................................................... 35
Interpolacja zmiennych w cigach znakw .................................................................... 37
Tworzenie zmiennych zawierajcych nazwy zmiennych ............................................... 39
Stae ................................................................................................................................ 41
Typy danych ................................................................................................................... 43
Podsumowanie ............................................................................................................... 45
Spis treci
Rozdzia 8.
Ingres
Oracle
dBase
InterBase
Ovrimos
Empress
Front Base
PostgreSQL
FilePro
mSQL
Solid
Hyperwave Direct
MS-SQL
Sybase
IBM DB2
MySQL
Velocis
Informix
ODBC
SQLite
Unix dbm
Jak wida, obsugiwanych typw serwerw baz danych jest bardzo wiele. Nie moemy w tej ksice opisa wszystkich, a zatem skoncentrujemy si na tym, ktry jest
najbardziej popularny wrd programistw PHP MySQL (baz danych MySQL
mona pobra za darmo ze strony http://www.mysql.com). Najnowsza, stabilna wersja
bazy danych to MySQL 4.0. Wanie z tej wersji skorzystamy w tym rozdziale.
W dalszej czci rozdziau przyjrzymy si rwnie moduowi PHP DB, w ktrym
zaimplementowano warstw abstrakcji dla operacji z bazami danych. Dziki temu mona
pracowa z kilkoma rnymi serwerami baz danych (tabela 8.1), uywajc wywoa
tych samych funkcji.
Podrczniki wbudowanej obsugi baz danych zestawionych w tabeli 8.1 mona uzyska pod adresem http://www.php.net/nazwa_db, gdzie nazwa_db oznacza nazw bazy
danych, na przykad mysql, Sybase, mssql itp. W przypadku baz danych ODBC naley
zastosowa nazw uodbc; dla bazy danych Oracle oci8. Modu DB umoliwia dostp do wszystkich typw baz danych w taki sam sposb, ale w przypadku skorzystania
z wbudowanej obsugi, aplikacje dziaaj znacznie szybciej.
238
Ocena
Anna
Marek
Edward
Franciszek
Tadeusz
Mateusz
Rafa
Tomasz
239
o nazwie owoc. Aby uzyska jej kopi, dostpn do przetwarzania w kodzie PHP, naley
wykona nastpujc instrukcj SQL (tzw. zapytanie):
SELECT * FROM owoc
Instrukcja zwraca zestaw rekordw zawierajcy wszystkie wiersze tabeli owoc. Z tabeli
mona rwnie pobiera okrelone pola. W naszym kolejnym przykadzie z tabeli owoc
wybierzemy pola nazwa i ilo:
SELECT nazwa, ilo FROM owoc
Za pomoc klauzuli IN okrela si zbir wartoci pola speniajcych warunki zapytania. Na przykad, aby wybra rekordy, w ktrych pole nazwa ma warto jabka lub
pomaracze, mona wykorzysta instrukcj:
SELECT * FROM owoc WHERE nazwa IN ("jabka", "pomaracze")
240
Do czenia klauzul mona wykorzysta operatory logiczne AND, OR oraz NOT. Zastosowanie operatora AND oznacza, e obie klauzule musz by prawdziwe, OR e dowolna z nich moe by prawdziwa, natomiast operator NOT odwraca warto klauzuli
z prawdy na fasz i z faszu na prawd.
Jak atwo si domyli, zestaw rekordw zwracany przez instrukcj SQL, moe by uporzdkowany. Oto przykad uporzdkowania rekordw z tabeli owoc wedug pola nazwa:
SELECT * FROM owoc ORDER BY nazwa
Rekordy porzdkuje si take malejco. W tym celu stosuje si sowo kluczowe DESC:
SELECT * FROM owoc ORDER BY nazwa DESC
Rekordy mona usun z bazy danych za pomoc instrukcji DELETE. W instrukcji pokazanej poniej usuwamy wszystkie rekordy z tabeli owoc, ktrych nazwy s rne od
jabka lub pomaracze:
DELETE FROM owoc WHERE name NOT IN ("jabka", "pomaracze")
Do tabeli mona take wprowadza nowe dane oto przykad wprowadzenia nowego
wiersza do tabeli owoc:
INSERT INTO owoc (nazwa, ilo) VALUES('morele', '203')
Teraz mamy pod rk tyle narzdzi SQL, ile potrzeba. W nastpnym punkcie nauczymy
si konfigurowa obsug serwera bazy danych w PHP.
241
242
Jeli nie ustawiono nazwy uytkownika i hasa, wystarczy wprowadzi polecenie mysql -u
root lub po prostu mysql:
%mysql -u root
Welcome to the MySQL monitor. Comnands end with ; or \g.
mysql>
Aby zobaczy, czy zdefiniowano jakie bazy danych, mona skorzysta z instrukcji
SHOW DATABASES. Wywietli si nastpujcy wynik:
mysql> SHOW DATABASES;
+----------+
| Database |
+----------+
| mysql
|
| test
|
+----------+
2 rows in set (0.01 sec)
W bazie danych MySQL s dwie wbudowane bazy danych mysql, zawierajca dane
administracyjne serwera MySQL, oraz test przykadowa baza danych. W celu zapisania informacji dotyczcych owocw i warzyw, utworzymy baz danych pod nazw
plody_rolne. Wykorzystamy do tego instrukcj CREATE DATABASE:
mysql> CREATE DATABASE plody_rolne;
Query OK, 1 row affected (0.01 sec)
Aby utworzona baza danych staa si domylna, naley wprowadzi polecenie USE
plody_rolne:
mysql> USE plody_rolne;
Database changed
Jak sprawdzi, czy w bazie danych plody_rolne s jakie tabele? Wystarczy uy polecenia SHOW TABLES:
mysql> SHOW TABLES;
Empty set (0.01 sec)
243
zmiennoprzecinkowa;
DATETIME obiekty typu data i godzina, na przykad 2006-11-15 20:00:00.
Poniej zamieszczono instrukcj tworzc tabel owoc z polami nazwa i ilo typu
cig znakw:
mysql> CREATE TABLE owoc (nazwa VARCHAR(20), ilosc VARCHAR(20));
Query OK, 0 rows affected (0.13 sec)
mysql> SHOW TABLES;
+-----------------------+
| Tables_in_plody_rolne |
+-----------------------+
| owoc
|
+-----------------------+
1 row in set (0.00 sec)
Ilo
jabka
1020
pomaracze
3329
banany
8582
gruszki
235
244
W celu wprowadzenia tych danych do tabeli owoc bdziemy kontynuowa sesj MySQL rozpoczt w poprzednim punkcie lub rozpoczniemy now w oknie wiersza polecenia:
$mysql -u root
Welcome to the MySQL monitor. Commands end with; or \g.
('jabka', '1020');
sec)
('pomaracze', '3329');
sec)
('banany', '8582');
sec)
('gruszki', '235');
sec)
Aby zatrzyma serwer, w katalogu mysql/bin, w innym oknie wiersza polecenia, naley
wpisa:
%mysqladmin -u root shutdown
245
Do poczenia si z baz danych MySQL suy funkcja mysql_connect. Jej argumentami s nazwa hosta oraz opcjonalnie nazwa uytkownika i haso:
$connection = mysql_connect("localhost","root","")
or die ("Nie mona poczy si z serwerem");
operacja SQL;
mysql_change_user zmiana uytkownika;
mysql_client_encoding zwraca nazw biecego zestawu znakw;
mysql_close zamyka poczenia MySQL;
mysql_connect otwiera poczenie z serwerem MySQL;
mysql_create_db tworzy baz danych MySQL;
mysql_data_seek wyszukuje dane w bazie danych;
mysql_db_name pobiera nazw bazy danych;
mysql_db_query przesya zapytanie SQL;
mysql_drop_db usuwa baz danych MySQL;
mysql_error zwraca tekst komunikatu o bdzie ostatnio wykonywanej
operacji MySQL;
mysql_fetch_array zwraca wiersz wyniku w postaci tablicy asocjacyjnej,
246
liczbowymi;
mysql_field_len zwraca dugo okrelonego pola;
mysql_field_name zwraca nazw okrelonego pola w zestawie wynikw;
mysql_field_seek przemieszcza wskanik pola do okrelonego przesunicia;
mysql_field_table zwraca nazw tabeli, w ktrej jest okrelone pole;
mysql_field_type zwraca typ wybranego pola w zestawie wynikw;
mysql_get_server_info pobiera informacje o serwerze MySQL;
mysql_info pobiera informacje o ostatnim zapytaniu;
mysql_list_dbs wywietla bazy danych dostpne na serwerze MySQL;
mysql_list_fields wywietla pola w tabeli bazy danych MySQL;
mysql_list_tables wywietla list tabel w bazie danych MySQL;
mysql_num_fields pobiera liczb pl zwrconych w wyniku zapytania;
mysql_num_rows pobiera liczb wierszy zapytania;
mysql_pconnect otwiera trwae poczenie z serwerem MySQL;
mysql_query wysya zapytanie SQL;
mysql_result pobiera dane wyniku;
mysql_select_db wybiera baz danych MySQL;
mysql_tablename pobiera nazw tabeli okrelonego pola.
Wywietlanie zawartoci
tabeli bazy danych
Jestemy gotowi, aby zaprezentowa wsplne dziaanie SQL i PHP w przegldarce.
Najpierw sprbujemy pobra tabel owoc z bazy danych plody_rolne i wywietli je
jako tabel HTML. Przede wszystkim trzeba poczy si z serwerem bazy danych,
wybra baz i utworzy obiekt $result reprezentujcy tabel owoc:
$connection = mysql_connect("localhost","root","")
or die ("Nie mona poczy si z serwerem");
$db = mysql_select_db("plody_rolne", $connection)
or die ("Nie mona wybra bazy danych");
$query = "SELECT * FROM owoc;
$result = mysql_query($query)
or die("Wykonanie zapytania nie powiodo si: " . mysql_error());
247
Teraz mona pobra kolejne wiersze z tabeli w ptli while za pomoc funkcji mysql_
fetch_array i odczyta pola nazwa i ilosc kadego wiersza w nastpujcy sposb:
while ($row = mysql_fetch_array($result))
{
echo "<TR>";
echo "<TD>", $row['nazwa'], "</TD><TD>", $row['ilosc'], "</TD>";
echo "</TR>";
}
Pozostao jeszcze napisanie kodu HTML tabeli, w ktrej wywietlimy dane. Kompletny
kod przykadu skrypt phpdatatable.php zamieszczono na listingu 8.1. Zwrmy
uwag, e na koniec zamknlimy poczenie za pomoc funkcji mysql_close. Zawsze
naley o tym pamita po zakoczeniu wykonywania operacji z baz danych.
Listing 8.1. Wywietlanie tabeli bazy danych, phpdatatable.php
<HTML>
<HEAD>
<TITLE>
Wywietlanie tabel bazy danych MySQL
</TITLE>
</HEAD>
<BODY>
<CENTER>
<H1>Wywietlanie tabel bazy danych MySQL</H1>
<?php
$connection = mysql_connect("localhost","root","")
or die ("Nie mona poczy si z serwerem");
$db = mysql_select_db("plody_rolne", $connection)
or die ("Nie mona wybra bazy danych");
$query = "SELECT * FROM owoc";
$result = mysql_query($query)
or die("Wykonanie zapytania nie powiodo si: ".mysql_error());
echo
echo
echo
echo
"<TABLE BORDER='1'>";
"<TR>";
"<TH>Nazwa</TH><TH>Ilo</TH>";
"</TR>";
248
Wynik dziaania skryptu zawarto tabeli owoc pokazano na rysunku 8.1. Super!
Rysunek 8.1.
Wywietlanie
zawartoci tabeli
bazy danych
To tyle. Udao si nam utworzy baz danych MySQL i pobra z niej dane, a nastpnie
wywietli je na stronie WWW.
Aktualizowanie danych
W przypadku, gdy dane zmieni si, mona z atwoci zaktualizowa baz danych za
pomoc odpowiedniej instrukcji SQL. Oto przykad: zamy, e kto kupi kilogram
gruszek, w zwizku z czym ich ilo w magazynie zmniejszya si z 235 na 234 kilogramy. Aby zaktualizowa t warto, naley podczy si do bazy danych MySQL
i wybra baz danych plody_rolne:
$connection = mysql_connect("localhost","root","")
or die ("Nie mona poczy si z serwerem");
$db = mysql_select_db("plody_rolne",$connection)
or die ("Nie mona wybra bazy danych");
Zobaczmy, jak mona zaktualizowa warto pola ilosc w tabeli owoc z 235 na 234
w wierszu zawierajcym dane dla gruszek:
$query = "UPDATE owoc SET ilosc = 234 WHERE nazwa = 'gruszki'";
.
.
.
249
"<TABLE BORDER='1'>";
"<TR>";
"<TH>Nazwa</TH><TH>Ilo</TH>";
"</TR>";
Now zawarto tabeli owoc zaprezentowano na rysunku 8.2. Jak mona zauway, ilo
gruszek zmniejszya si z 235 do 234.
250
Rysunek 8.2.
Aktualizacja danych
Po wprowadzeniu nowego wiersza mona przejrze now zawarto tabeli tak, jak
pokazano w skrypcie phpdatainsert.php, zamieszczonym na listingu 8.3.
Listing 8.3. Wprowadzanie nowych danych do bazy, phpdatainsert.php
<HTML>
<HEAD>
<TITLE>
Wprowadzanie nowych danych do bazy
</TITLE>
</HEAD>
251
<BODY>
<CENTER>
<H1>Wprowadzanie nowych danych</H1>
<?php
$connection = mysql_connect("localhost","root","")
or die ("Nie mona poczy si z serwerem");
$db = mysql_select_db("plody_rolne", $connection)
or die ("Nie mona wybra bazy danych");
$query = "INSERT INTO owoc (nazwa, ilosc) VALUES('morele', '203')";
$result = mysql_query($query)
or die("Wykonanie zapytania nie powiodo si: ".
mysql_error());
$query = "SELECT * FROM owoc";
$result = mysql_query($query)
or die("Wykonanie zapytania nie powiodo si: ".
mysql_error());
echo
echo
echo
echo
"<TABLE BORDER='1'>";
"<TR>";
"<TH>Nazwa</TH><TH>Ilo</TH>";
"</TR>";
Rysunek 8.3 przedstawia rezultat dziaania skryptu. Jak wida, bez trudu udao si
wprowadzi morele do bazy danych.
Usuwanie danych
W jaki sposb usuwa si dane? Przyjmijmy, e dostawca moreli nie dostarcza towaru,
a zatem trzeba usun zapis w bazie danych utworzony w poprzednim punkcie. Jak
zwykle, zaczniemy od poczenia z baz danych:
$connection = mysql_connect("localhost","root","")
or die ("Nie mona poczy si z serwerem");
$db = mysql_select_db("plody_rolne",$connection)
or die ("Nie mona wybra bazy danych");
252
Rysunek 8.3.
Wprowadzanie
danych do bazy
253
$result = mysql_query($query)
or die("Wykonanie zapytania nie powiodo si: " . mysql_error());
echo
echo
echo
echo
"<TABLE BORDER='1'>";
"<TR>";
"<TH>Nazwa</TH><TH>Ilo</TH>";
"</TR>";
Wyniki dziaania skryptu pokazano na rysunku 8.4. Rzeczywicie, dane dotyczce moreli
nie s widoczne. W ten sposb nauczylimy si wprowadza dane do tabel bazy danych
i je z nich usuwa.
Rysunek 8.4.
Usuwanie danych
254
Teraz, mona wprowadzi dane do nowej tabeli warzywa, za pomoc instrukcji INSERT:
$query = "INSERT INTO warzywa (nazwa, ilosc) VALUES('kukurydza', '2083')";
$result = mysql_query($query)
or die("Wykonanie zapytania nie powiodo si: " . mysql_error());
"<TABLE BORDER='1'>";
"<TR>";
"<TH>Nazwa</TH><TH>Ilo</TH>";
"</TR>";
255
{
echo "<TR>";
echo "<TD>", $row[nazwa], "</TD><TD>".
$row['ilosc'], "</TD>";
echo "</TR>";
}
echo "</TABLE>";
mysql_close($connection);
?>
</CENTER>
</BODY>
</HTML>
256
"<TABLE BORDER='1'>";
"<TR>";
"<TH>Nazwa</TH><TH>Ilo</TH>";
"</TR>";
257
echo "</TR>";
}
echo "</TABLE>";
mysql_close($connection);
?>
</CENTER>
</BODY>
</HTML>
Sortowanie danych
Czy mona posortowa dane? Nic atwiejszego. Wystarczy poczy si z baz danych
tak, jak zwykle:
$connection = mysql_connect("localhost","root","")
or die ("Nie mona poczy si z serwerem");
$db = mysql select db("plody_rolne",$connection)
or die ("Nie mona wybra bazy danych");
258
"<TABLE BORDER='1'>";
"<TR>";
"<TH>Nazwa</TH><TH>Ilo</TH>";
"</TR>";
Wyniki dziaania skryptu zaprezentowano na rysunku 8.7. Jak atwo zauway, dane
z tabeli owoc zostay posortowane wedug nazwy. Sortowanie danych przydaje si do
przygotowywania danych, przeznaczonych do wywietlenia w przegldarce uytkownika.
259
Rysunek 8.7.
Sortowanie danych
260
1.2
1.2
1.6.5
1.1.3
1.2.6
1.0.2
1.3.1
1.0.0
1.2.0
1.1.0
stable
stable
stable
stable
stable
stable
stable
stable
stable
stable
Jest to lista zainstalowanych moduw PEAR. Jak wida, wrd nich jest modu DB.
Jeli na licie zainstalowanych moduw nie ma moduu DB, mona go zainstalowa
w nastpujcy sposb:
%pear install DB
Aby dowiedzie si, jakie inne moduy s dostpne w repozytorium PEAR, naley
skorzysta z polecenia list-all:
%pear list-all
ALL PACKAGES:
=============
PACKAGE
APC
Cache
Cache_Lite
apd
memcache
perl
PHPUnit
PHPUnit2
PHP_Compat
Var_Dump
Xdebug
Archive_Tar
bz2
Contact_Vcard_Build
Contact_Vcard_Parse
File_Fstab
File_HtAccess
File_Passwd
File_SMBPasswd
MP3_ID
zip
Auth
Auth_HTTP
Auth_PrefManager
Auth_RADIUS
Auth_SASL
radius
Benchmark
Config
.
.
.
LATEST
2.0.4
1.5.4
1.3.1
1.0
1.3
0.6
1.0.1
2.0.2
1.1.0
1.0.0
1.3.2
1.2
1.0
1.1
1.30
2.0.0
1.1.0
1.1.0
1.0.0
1.1.3
1.0
1.2.3
2.0
1.1.3
1.0.4
1.0.1
1.2.4
1.2.1
1.10.2
LOCAL
1.0.1
1.2
261
Mona rwnie zastosowa instrukcj include 'DB.php';, ktra jednak rni si nieco od poprzedniej. Jeli plik, ktry chcemy wykorzysta nie istnieje, instrukcja require
uzna to za bd krytyczny i zakoczy skrypt, natomiast instrukcja include wywietli
jedynie ostrzeenie. Modu DB wykorzystamy w praktyce w nastpnym punkcie.
Teraz mona uy metody query obiektu $db i wykona zapytanie SQL tak, jak poniej,
gdzie przeczytano ca zawarto tabeli owoc:
require 'DB.php';
$db = DB::connect('mysql://root:@localhost/plody_rolne');
$query = "SELECT * FROM owoc";
$result = $db->query($query);
262
Wiersz danych mona pobra za pomoc metody fetchRow. Przykad pokazano w skrypcie
phpdb.php, zamieszczonym na listingu 8.8 dziki uyciu staej DB_FETCHMODE_ASSOC
metoda zwrcia dane w postaci tablicy asocjacyjnej. Pozwolio to, by pozostaa cz
kodu nie rnia si od odczytania zawartoci tablicy z wykorzystaniem funkcji obsugi bazy MySQL.
Listing 8.8. Wywietlanie zawartoci tabeli z wykorzystaniem moduu DB, phpdb.php
<HTML>
<HEAD>
<TITLE>
Zastosowanie moduu DB do wywietlenia zawartoci tabeli
</TITLE>
</HEAD>
<BODY>
<CENTER>
<H1>Zastosowanie moduu DB do wywietlenia zawartoci tabeli</H1>
<?php
require 'DB.php';
$db = DB::connect('mysql://root:@localhost/plody_rolne');
$query = "SELECT * FROM owoc";
$result = $db->query($query);
echo
echo
echo
echo
"<TABLE BORDER='1'>";
"<TR>";
"<TH>Nazwa</TH><TH>Ilo</TH>";
"</TR>":
263
Rysunek 8.8.
Wykorzystanie
moduu DB do
wywietlenia
tabeli
264
Po wprowadzeniu nowego wiersza wywietlimy zawarto caej tabeli tak, jak pokazano w skrypcie phpdbinsert.php, na listingu 8.9.
Listing 8.9. Wprowadzanie nowych danych do bazy, phpdbinsert.php
<HTML>
<HEAD>
<TITLE>
Wykorzystanie moduu DB do wprowadzania danych
</TITLE>
</HEAD>
<BODY>
<CENTER>
<H1>Zastosowanie moduu DB do wprowadzania danych</H1>
<?php
require 'DB.php';
$db = DB::connect('mysql://root:@localhost/plody_rolne');
$query = "INSERT INTO owoc (nazwa, ilosc) VALUES('morele', '203')";
$result = $db->query($query);
$query = "SELECT * FROM owoc";
$result = $db->query($query);
echo
echo
echo
echo
"<TABLE BORDER='1'>";
"<TR>";
"<TH>Nazwa</TH><TH>Ilo</TH>";
"</TR>";
Udao si. Planowany rekord dotyczcy moreli zosta dodany, co mona zobaczy na
rysunku 8.9.
265
Rysunek 8.9.
Wykorzystanie
moduu DB do
wprowadzania
danych
Aktualizacja danych
za pomoc moduu DB
Oto kolejna operacja: aktualizowanie danych z wykorzystaniem moduu DB. Podobnie, jak poprzednio zmniejszymy ilo gruszek w tabeli owoc z 235 do 234 kilogramw. Majc ju troch dowiadczenia w uywaniu jzyka SQL z moduem DB, nie
powinnimy mie z tym problemw. Wystarczy skonfigurowa waciw instrukcj
SQL, a nastpnie j wykona:
$query = "UPDATE owoc SET ilosc = 234 WHERE nazwa = 'gruszki'";
$result = $db->query($query);
266
"<TABLE BORDER='1'>";
"<TR>";
"<TH>Nazwa</TH><TH>Ilo</TH>";
"</TR>";
Wyniki zaprezentowano na rysunku 8.10. Jak mona zauway, bez trudu udao si
zmodyfikowa dane o iloci gruszek zapisane w bazie.
Rysunek 8.10.
Wykorzystanie
moduu DB
do aktualizacji
danych
W module DB jest rwnie metoda DB::isError, ktra suy do obsugi bdw. Modu DB, po uzyskaniu wyniku dziaania jego metody, mona przekaza do metody
DB::isError. Jeli metoda ta zwrci TRUE, oznacza to, e wystpi bd. Waciwy
komunikat o bdzie mona wywietli za pomoc metody getMessage obiektu reprezentujcego wynik:
$db = DB::connect('mysql://root:@localhost/plody_rolne');
if(DB::isError($db)){
die($db->getMessage());
}
267
Teraz, kiedy umiemy ju wykonywa instrukcje SQL za pomoc moduu DB, moemy
tworzy dowolnie skomplikowane aplikacje bazodanowe. Zmiana typu serwera bazy
danych sprowadza si do podania nazwy typu serwera w cigu poczenia.
Podsumowanie
W tym rozdziale zaprezentowano zagadnienia zwizane z obsug baz danych i opisano rne opcje obsugi baz danych dostpne w PHP. Jest to bardzo przydatne, poniewa pozwala na zapisywanie danych na serwerze i zarzdzanie nimi. Oto kilka najwaniejszych zagadnie opisanych w tym rozdziale:
Do serwerw baz danych mona podczy si za pomoc funkcji PHP
mysql_connect. Baz danych wybieramy dziki funkcji mysql_select_db.
Tworzenie bazy danych umoliwia instrukcja CREATE.
Instrukcja CREATE pozwala take tworzy tabele i okrela typ danych,