|
|
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.
|
mysql_fetch_array
(PHP 3, PHP 4, PHP 5) mysql_fetch_array -- Zapisuje
wiersz wyniku w tablicy asocjacyjnej, numerycznej lub w obu
Opisarray mysql_fetch_array
( resource wynik [, int typ_wyniku] )
Zwraca tablicę zawierającą pobrany wiersz, lub FALSE jeżeli nie ma więcej wierszy w
wynik.
mysql_fetch_array() jest rozszerzoną
wersją mysql_fetch_row(). Oprócz zapisywania danych
w indeksach numerycznych, zapisuje je też w indeksach
przyporządkowujących (asocjacyjnych), używając nazw pól jako
kluczy.
Jeżeli dwie lub więcej kolumn wyniku ma te same nazwy,
ostatnia kolumna będzie brana pod uwagę. Dostęp do innych
kolumn o tej samej nazwie jest możliwy jedynie przez
indeksowanie numeryczne lub przez stworzenie aliasa. Po
stworzeniu aliasa nie można już odwoływać się do danej kolumny
używając jej prawdziwej nazwy (w tym przykładzie używając
'pole').
Przykład 1. Zapytanie z powtarzającymi się
nazwami pól
select table1.field as foo table2.field as bar from table1, table2
|
|
Godne uwagi jest to, że użycie mysql_fetch_array() nie jest znacząco
wolniejsze od użycia mysql_fetch_row(), a jest bardziej
funkcjonalne.
Opcjonalny drugi argument result_type w funkcji mysql_fetch_array() jest stałą i może przyjmować
następujące wartości: MYSQL_ASSOC, MYSQL_NUM i MYSQL_BOTH. Tę
funkcjonalność dodano w PHP 3.0.7. Wartością domyślną jest
MYSQL_BOTH.
Używając MYSQL_BOTH otrzymasz tablicę indeksowaną zarówno
asocjacyjnie jak i numerycznie. MYSQL_ASSOC dostarczy tablicy
indeksowanej tylko asocjacyjnie (jak w mysql_fetch_assoc()), natomiast MYSQL_NUM
indeksowanej tylko numerycznie (jak w mysql_fetch_row()).
Przykład 2. mysql_fetch_array z MYSQL_NUM
<?php
mysql_connect('localhost', 'uzytkownik', 'haslo') or
die('Nie można się połączyć: ' . mysql_error());
mysql_select_db('baza');
$result = mysql_query("SELECT id, nazwa FROM tabela");
while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
printf ("ID: %s Nazwa: %s", $row[0], $row[1]);
} mysql_free_result($result);
?> |
|
Przykład 3. mysql_fetch_array z
MYSQL_ASSOC
<?php
mysql_connect('localhost', 'uzytkownik', 'haslo') or
die('Nie można się połączyć: ' . mysql_error());
mysql_select_db('baza');
$result = mysql_query("SELECT id, nazwa FROM tabela");
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
printf ("ID: %s Nazwa: %s", $row["id"], $row["nazwa"]);
} mysql_free_result($result);
?> |
|
Przykład 4. mysql_fetch_array z
MYSQL_BOTH
<?php
mysql_connect('localhost', 'uzytkownik', 'haslo') or
die('Nie można się połączyć: ' . mysql_error());
mysql_select_db('baza');
$result = mysql_query("SELECT id, nazwa FROM tabela");
while ($row = mysql_fetch_array($result, MYSQL_BOTH)) {
printf ("ID: %s Nazwa: %s", $row[0], $row["nazwa"]);
} mysql_free_result($result);
?> |
|
Patrz także: mysql_fetch_row(), mysql_fetch_assoc().
|