kurswww 06b php loftmhfhjvq737fjwghzeg4xrqzewhoj6ropwby LOFTMHFHJVQ737FJWGHZEG4XRQZEWHOJ6ROPWBY

background image

Kurs WWW

Paweł Rajba

Paweł Rajba

pawel@ii.uni.wroc.pl

http://pawel.ii.uni.wroc.pl/

background image

PHP – obsługa MySQL

resource

mysql_connect

(

[string serwer
[,string użytkownik
[,string hasło]]])

łączy z bazą danych

domyślnie

serwer: "localhost:3306"

użytkownik: user będący właścicielem procesu

MySQL

hasło: ""

background image

PHP – obsługa MySQL

int

mysql_create_db

(string nazwa_bazy

[, resource identyfikator_połączenia])

tworzy bazę danych

bool

mysql_select_db

(string nazwa_bazy

[, resource identyfikator_połączenia])

wybiera bazę danych

background image

PHP – obsługa MySQL

resource

mysql_query

(string zapytanie

[, resource identyfikator_połączenia
[, int typ_wyniku]])

wykonuje zapytanie zwracając zasoby

zapytania nie powinno się kończyć średnikiem

typ_wyniku może przyjmować następujące

wartości:

MYSQL_USE_RESULT

MYSQL_STORE_RESULT (domyślne, wynik jest

buforowany)

background image

PHP – obsługa MySQL

resource

mysql_unbuffered_query

(string zapytanie

[, resource identyfikator_połączenia
[, int typ_wyniku]])

wysyła zapytanie nie pobierając i buforując wyniku

ma znaczenie przy zapytaniu generującemu duże

wyniki; znacznie oszczędza pamięć

nie trzeba czekać na zakończenie zapytania; można

od razu pracować na pierwszej krotce

nie można użyć funkcji mysql_num_rows()

przed wysłaniem kolejnego zapytania należy pobrać

wszystkie wiersze.

background image

PHP – obsługa MySQL

int

mysql_insert_id

([resource id_połączenia])

podaje numer ID wygenerowany przez auto_increment

podczas ostatniej operacji INSERT

<?php
mysql_connect('localhost', 'user', 'pass') or
die('Nie można się połączyć');
mysql_select_db('test');
mysql_query("INSERT INTO osoba(imie,nazwisko,...)
values ('Paweł','Rajba',...)");
printf("Ostatnio dodany rekord ma id %d\n",
mysql_insert_id());
?>

background image

PHP – obsługa MySQL

array

mysql_fetch_array

(resource wynik

[, int typ_wyniku])

zapisuje wiersz wyniku w tablicy asocjacyjnej
lub zwraca null gdy nie ma więcej wierszy

typ_wyniku

MYSQL_ASSOC

MYSQL_NUM

MYSQL_BOTH (domyślne, zwraca tablicę

asocjacyjną i indeksowaną numerycznie)

background image

PHP – obsługa MySQL

array

mysql_fetch_assoc

(resource wynik)

równoważne
mysql_fetch_array( _ , MYSQL_ASSOC)

array

mysql_fetch_row

(resource wynik)

równoważne
mysql_fetch_array( _, MYSQL_NUM)

bool

mysql_free_result

(resource wynik)

zwraca całą pamięć przydzieloną wynikowi

background image

PHP – obsługa MySQL

string

mysql_error

([resource id_połączenia])

zwraca tekst komunikatu z ostatnio wykonanej

operacji

int

mysql_errno

([resource id_połączenia])

zwraca numer komunikatu błędu z ostatnio
wykonanej operacji

bool

mysql_close

([resource id_połączenia])

zamyka połączenie z serwerem

background image

PHP – obsługa MySQL

int

mysql_num_rows

(resource wynik)

zwraca liczbę wierszy w wyniku

stosuje się do polecenie SELECT

int

mysql_affected_rows

([resource conn_id])

zwraca liczbę przetworzonych wierszy

stosuje się do poleceń UPDATE, INSERT,

DELETE

jeżeli DELETE zostanie wywołany bez klauzuli

WHERE, to wtedy funkcja zwróci wartość 0

background image

PHP – obsługa MySQL

bool

mysql_data_seek

(

resource identyfikator_wyniku,
int numer_wiersza)

przesuwa wewnętrzny wskaźnik do pozycji
numer_wiersza

array

mysql_fetch_lengths

(resource wynik)

pobiera długość każdego pola pobranego za

pomocą funkcji mysql_fetch_row (muszą być
numerki)

background image

PHP – obsługa MySQL

mysql_fetch_lengths

– przykład:

<?php
...
$row = mysql_fetch_array($result,MYSQL_BOTH);
$len = mysql_fetch_lengths($result);
print $row["id"]." ";
print $row["name"]." ";
print $row["salary"]."<br>\n";
print $len[0]." ".$len[1]." ".$len[2]."<br>\n";
...
?>

background image

PHP – obsługa MySQL

string

mysql_field_table

(

resource wynik, int ofset_pola)

pobiera nazwę tabeli w której znajduje się
dane pole

może mieć znaczenie przy złączeniach

int

mysql_num_fields

(resource wynik)

zwraca liczbę pól w wyniku

string

mysql_field_name

(

resource wynik, int indeks_pola)

podaje nazwę danego pola w wyniku

background image

PHP – obsługa MySQL

string

mysql_field_type

(

resource wynik, int ofset_pola)

pobiera typ podanego pola (int, real, string, ...)

int

mysql_field_len

(

resource wynik, int ofset_pola)

zwraca długość podanego pola

resource

mysql_list_fields

(string baza, string

tabela [, resource identyfikator_połączenia])

zwraca informację o polach

background image

PHP – obsługa MySQL

mysql_list_fields

– przykład

<?php
...
$fields = mysql_list_fields('test','emp', $link);
$columns = mysql_num_fields($fields);
for ($i = 0; $i < $columns; $i++) {
echo mysql_field_name($fields, $i).":";
echo mysql_field_type($fields, $i).":";
echo mysql_field_len($fields, $i)."<br>\n";
}
...
?>
//id:int:11
//name:string:20
//salary:int:11

background image

PHP – obsługa MySQL

resource

mysql_list_tables

(string baza

[, resource identyfikator_połączenia])

pobiera nazwy tabel z baza

string

mysql_tablename

(resource wynik, int i)

pobiera nazwę i-tej tabeli z wyniku funkcji
mysql_list_tables

background image

PHP – obsługa MySQL

Przykład:

<?php
...
$result = mysql_list_tables('test');
while ($row = mysql_fetch_row($result)) {
printf ("Tabela: %s\n",$row[0]);
}
for ($i=0; $i<mysql_num_rows($result); $i++) {
printf ("Tabela:%s\n",
mysql_tablename($result,$i));
}
...
?>

background image

PHP – obsługa MySQL

Przykład:

tabela.php, bazooka.php

background image

PHP – wysyłanie plików z formularza

Kilka różnic między zwykłym formularzem, a

takim do wysłania pliku:

należy obowiązkowo umieścić w znaczniku

form

atrybut

enctype="multipart/form-data"

powinien się również pojawić element

input

z

type="file"

możemy też umieścić element taki jak

<input type="hidden"
name="MAX_FILE_SIZE" value="30000">

określi on maksymalny akceptowany rozmiar
pliku; musi być przed

input...file

background image

PHP – wysyłanie plików z formularza

Dyrektywy w pliku

php.ini

file_uploads = On | Off

włącza/wyłącza możliwość uploadowania
plików

upload_tmp_dir = ścieżka

określa tymczasowy katalog w którym będą

składowane pobrane pliki; domyślnie nie jest
to ustawione – rolę takiego katalogu pełni

tymczasowy katalog w systemie (np.
C:\Windows\Temp)

background image

PHP – wysyłanie plików z formularza

Dyrektywy... c.d.

upload_max_filesize = rozmiar

maksymalny akceptowany rozmiar
uploadowanego pliku (domyślnie 2MB)

post_max_size = rozmiar

maksymalny akceptowany rozmiar

przesyłanego formularza (domyślnie 8M)

background image

PHP – wysyłanie plików z formularza

Po wysłaniu, dostępne są następujące zmienne:

$_FILES["plik"]["name"]

– oryginalna nazwa pliku po stronie klienta

$_FILES["thefile"]["type"]

– typ zawartości wysłanego pliku

$_FILES["thefile"]["size"]

– rozmiar wysłanego pliku

$_FILES["thefile"]["tmp_name"]

– nazwa pliku przesłanego na serwer

$_FILES["thefile"]["error"]

– kod błędu

background image

PHP – wysyłanie plików z formularza

Kody błędów, które mogą się pojawić przy

wysyłaniu plików z formularza:

UPLOAD_ERR_OK

(kod 0)

– operacja zakończyła się sukcesem

UPLOAD_ERR_INI_SIZE

(kod 1)

– plik przekracza rozmiar określony dyrektywą

upload_max_filesize

w pliku

php.ini

background image

PHP – wysyłanie plików z formularza

Kody błędów... c.d.

UPLOAD_ERR_FORM_SIZE

(kod 2)

– plik przekracza rozmiar określony dyrektywą
z formularza

MAX_FILE_SIZE

UPLOAD_ERR_PARTIAL

(kod 3)

– plik pobrany częściowo

UPLOAD_ERR_NO_FILE

(kod 4)

– nie pobrano żadnego pliku

background image

PHP – wysyłanie plików z formularza

Funkcje przydatne przy wysyłaniu plików z

formularza

bool is_uploaded_file(string nazwa_pliku)

– upewnia nas, że plik faktycznie został
przysłany metodą POST, a skrypt nie będzie

pracował na plikach których nie powinien

bool move_uploaded_file(string plik,

string destination)

– po sprawdzeniu, że plik został przysłany

metodą POST jest on przenoszony do nowej
lokalizacji

background image

PHP – wysyłanie plików z formularza

Wysyłanie wielu plików

Przykład:

pliki.php

background image

PHP – funkcje do obsługi tablic

array array_count_values(array wejście)

zwraca tablicę z elementami i ich częstością

występowania w tablicy wejście (p)

array array_diff(array t1, array t2 [, array ...])

zwraca tablicę, której elementami są te
elementy t1, które nie występują w

pozostałych argumentach (p)

array array_fill(int start, int ile, mixed wartość)

wypełnia tablicę podanymi wartościami (p)

background image

PHP – funkcje do obsługi tablic

array array_filter(array wejście [, callback

funkcja_zwrotna])

zwraca tablicę elementów z wejście, dla

których funkcja_zwrotna zwróci TRUE (p)

array array_flip(array trans)

dla każdego elementu tablicy wymienia klucz z

odpowiadającą mu wartością (p)

array array_intersect(array t1, array t2 [, array

...])

zwraca elementy z t1, które występuję we

wszystkich pozostałych argumentach (p)

background image

PHP – funkcje do obsługi tablic

bool array_key_exists (mixed szukany,

array tablica)

sprawdza, czy szukany klucz jest w tablicy (p)

array array_map(callback funkcja_zwrotna,

array t1 [, array t2...])

wykonuje funkcje zwrotną na każdym
elemencie t1; liczba argumentów funkcji

zwrotnej powinna być równa ilości tablic (p)

background image

PHP – funkcje do obsługi tablic

array array_merge(array t1, array t2 [, array

...])

łączy kilka tablic w jedną (p)

mixed array_pop(array tablica)

usuwa i zwraca ostatni element tablicy

int array_push ( array tablica, mixed wartosc

[, mixed ...])

wstawia jeden więcej elementów na koniec

tablicy

background image

PHP – funkcje do obsługi tablic

mixed array_rand(array wejście [, int ilość])

wybiera jeden lub więcej losowo wybranych

elementów z tablicy (p)

void shuffle(array tablica)

tasuje elementy tablicy (p)

array array_reverse(array wejście

[, bool zachowaj_klucze])

odwraca kolejność elementów w tablicy (p)

background image

PHP – funkcje do obsługi tablic

mixed array_search(mixed igła, array

stóg_siana [, bool ścisły])

szuka wartości w tablicy

zwraca klucz znalezionego elementu lub

NULL

ścisły określa, czy mają być też porównywane

typy elementów

background image

PHP – funkcje do obsługi tablic

mixed array_shift(array tablica)

usuwa i zwraca pierwszy element tablicy

array array_slice(array tablica, int

przesunięcie [, int długość])

zwraca kawałek tablicy od przesunięcie, a

długość to ilość zwróconych elementów

jeśli przesunięcie jest ujemne, to sekwencja

zacznie się o tyle elementów od końca

jeśli długość jest ujemna, to sekwencja

skończy się o tyle elementów od końca (p)

background image

PHP – funkcje do obsługi tablic

mixed array_sum(array tablica)

oblicza sumę wartości elementów w tablicy

array array_unique(array tablica)

usuwa duplikaty wartości z tablicy

int array_unshift ( array tablica, mixed

wartość [, mixed ...])

wstaw jeden lub więcej elementów na

początek tablicy

int count(mixed zmienna)

zlicza ilość elementów w tablicy

background image

PHP – funkcje do obsługi tablic

mixed current(array tablica)

zwraca wartość bieżącego elementu

mixed next(array tablica)

przesuwa wskaźnik o jeden do przodu

zwraca element po przesunięciu lub FALSE,

jeśli nie ma więcej elementów

mixed prev(array tablica)

przesuwa wskaźnik o jeden do tyłu

zwraca element po przesunięciu lub FALSE,

jeśli nie ma więcej elementów

background image

PHP – funkcje do obsługi tablic

mixed reset(array tablica)

ustawia wskaźnik w tablicy na pierwszy

element

zwraca ten pierwszy element

mixed end(array tablica)

ustawia wskaźnik w tablicy na ostatni element

zwraca ten ostatni element

mixed key(array tablica)

zwraca klucz bieżącego elementu tablicy

asocjacyjnej

background image

PHP – funkcje do obsługi tablic

int sizeof(mixed zmienna)

alias do funkcji count()

mixed pos(array tablica)

alias do funkcji current()

array range(mixed dolny, mixed górny)

tworzy tablicę elementów od dolny do górny

włącznie

jeśli górny<dolny, to sekwencja będzie do

górnego do dolnego (p)

background image

PHP – funkcje do obsługi tablic

array each(array tablica)

pobiera parę (klucz, wartość) bieżącego

elementu w tablicy

void list(mixed ...)

argumentom przypisuje kolejne elementy z
przypisywanej tablicy (p)

background image

PHP – funkcje do obsługi tablic

void sort(array tablica [, int flagi])

sortuje tablice

flagę można ustawić na

SORT_REGULAR - porównuj elementy

normalnie

SORT_NUMERIC - porównuj elementy jako

liczby

SORT_STRING - porównuj elementy jako stringi

(p)

background image

PHP – funkcje do obsługi tablic

void usort(array tablica, callback funkcja_por)

sortuje tablicę porównując elementy funkcją

zdefiniowaną przez użytkownika (p)

void rsort(array tablica [, int flagi])

sortuje w porządku odwrotnych

int ksort (array tablica [, int flagi])

sortuje tablicę względem kluczy

zachowuje skojarzenia kluczy z danymi (p)


Wyszukiwarka

Podobne podstrony:
kurswww-06b-php
kurswww 06e php l4zupq3upz4i7klcgxbsinlub4k5v5wkgbyppqa L4ZUPQ3UPZ4I7KLCGXBSINLUB4K5V5WKGBYPPQA
kurswww 06c php m7rofqufu46zrmh Nieznany
kurswww 06e php l4zupq3upz4i7klcgxbsinlub4k5v5wkgbyppqa L4ZUPQ3UPZ4I7KLCGXBSINLUB4K5V5WKGBYPPQA
PHP podst progr suplement wyklad grudzien 2011
cw php
Jak wysłać ze strony WWW e-mail z dowolnym załącznikiem, PHP Skrypty
Jak przerwać wykonywanie pętli (for, PHP Skrypty
Jak stworzyć prostą wyszukiwarkę dla własnych stron WWW, PHP Skrypty
Jak stworzyć zaawansowany test wyboru lub quiz, PHP Skrypty
Jak wygenerować bezpieczne, PHP Skrypty
AJAX i PHP cwiczenia praktyczne cwajph
PHP i MySQL Tworzenie sklepow internetowych Wydanie II
PHP Praktyczne projekty
Flash i PHP Tworzenie systemu e commerce
PHP Co nowego w PHP 5 (cz 3) 11 2004
08 php 1
PHP i Oracle Tworzenie aplikacji webowych od przetwarzania danych po Ajaksa

więcej podobnych podstron