bd2 09php help, UEK, Projektowanie serwisów internetowych


Język PHP.

Wybrane elementy oraz funkcje do operowania na bazie danych

I. Podstawy PHP, wersja 5

  1. Jeśli w kodzie HTML używany jest kod PHP, plik musi mieć rozszerzenie PHP. Plik zawierający obraz strony należy umieścić w katalogu public_html. Dostęp do pliku z poziomu przeglądarki:

serwer/~użytkownik/plik.php

Wszyscy użytkownicy muszą mieć prawo czytania pliku (chmod 644).

  1. W pliku zawierającym opis strony internetowej można umieścić instrukcje PHP. Kod PHP musi się wtedy znajdować między znacznikami:

<?php

?>

lub

<?

?>

Przykład:

<HTML>

Tu jest kod w HTML

<?

Tu jest kod w PHP

?>

Tu jest kod w HTML

</HTML>

  1. Każda instrukcja PHP kończy się średnikiem

  2. Wielkość liter w nazwach zmiennych ma znaczenie:
    $abc i $Abc oznaczają różne zmienne

  3. Zmienne nie muszą być deklarowane. O tym, że ciąg znaków jest zmienną decyduje znak dolara ($) umieszczony przed tym ciągiem. Aby przypisać zmiennej wartość należy użyć znaku równości

Przykład:

$abc=”Dowolne znaki”;

$x=34.8;

Zmiennej $abc zostaje przypisany ciąg znaków, a zmiennej $x - liczba.

  1. Aby z poziomu PHP umieścić tekst na stronie internetowej, należy użyć funkcji print lub echo:

Przykład:

print ”Wartość zmiennej jest równa $x”;

echo ”Wartość zmiennej jest równa $x”;

W przeglądarce pojawi się tekst umieszczony w cudzysłowie, zakończony wartością znajdującą się w zmiennej $x

UWAGA:

Ciąg znaków będący parametrem instrukcji print i zawierający nazwę zmiennej, której zawartość ma zostać wyświetlona musi być ujęty w cudzysłów (nie w apostrofy).

  1. Parametrem instrukcji print może być kod HTML

Przykład:

print(”<TABLE>”);

print(”<INPUT type='text' name='nazwa' size='30' maxlength='50'>”);

  1. Składnia instrukcji IF:

if (warunek)

{

ciąg instrukcji

}

else

{

ciąg instrukcji

};

Przykład:

if ($x==23)

print(”Zmienna x jest równa 23”);

else

print(”Zmienna x jest różna od 23 i wynosi $x”);

  1. Składnia instrukcji FOR:

FOR (zmiennaSterująca=wartośćPoczątkowa; warunekZakończenia; krok)

{

ciąg instrukcji;

};

Przykład:

FOR ($i=0; $i<5; $i++)

{

...

};

Pętla jest kończona, gdy warunekZakończenia przyjmie wartość fałszu (pętla z powyższego przykładu wykona się pięciokrotnie, dla $i=0, 1, 2, 3, 4).

  1. Składnia pętli WHILE:

while (warunek)

{

...

};

Pętla jest kończona, gdy warunek przyjmie wartość fałszu.

  1. Składnia funkcji:

function nazwa (lista parametrów formalnych)

{

instrukcje wchodzące w skład funkcji

return wyrażenie;

}

gdzie wyrażenie to dowolne wyrażenie zwracane przez funkcję.

  1. Dołączanie kodu z pliku

Instrukcja include służy do dołączenia zawartości innego pliku:

<?php
...
include `abc.php';

...

?>

UWAGA:

Instrukcja include ma zasięg lokalny. Oznacza to, że musi być dołączona wewnątrz funkcji która z niej korzysta.

Przykład:

Załóżmy, że w pliku abc.php jest zdefiniowana funkcja fx().

Poniższa kombinacja dołączenia pliku abc.php i wywołania funkcji jest błędna:

<?php

include “abc.php”;

function xxx()

{

fx();

}

Poniższa jest poprawna (plik jest dołączany wewnątrz funkcji):

<?php

function xxx()

{

include `abc.php';

fx();

}

?>

  1. Łańcuchy znakowe łączone są przy pomocy kropki

  2. Komentarze wielowierszowe tworzy się przy pomocy znaków /* oraz */

Tekst w wierszu poprzedzony dwoma znakami slash // jest komentarzem

II. Funkcje PHP do operowania na bazie danych PostgreSQL

UWAGA:

W celu uniknięcia niejednoznaczności, tabela bazy danych lub tabela będąca wynikiem zapytania będzie w opisie nazywana tabelą, a tabela jako typ danych w języku PHP będzie określana jako tablica.

  1. Połączenie z bazą danych

$conn=pg_connect(`dbname=nazwa_bazy user=nazwa_użytkownika password=hasło');

Od tego momentu odwołania do bazy danych następują za pośrednictwem zmiennej $conn.

Hasło podawane jest tu jawnie, jednak nie jest przesyłane przez sieć (kod PHP jest wykonywany na serwerze). Aby zwiększyć bezpieczeństwo i uniknąć możliwości podejrzenia hasła przez osoby niepowołane w trakcie tworzenia kodu, można ukryć hasło w pliku w następujący sposób.

- utworzyć plik (np. o nazwie haslo.php) i wpisać w nim kod:

<?php

$h='xxx'

?>

w miejsce xxx wpisując hasło dostępu do bazy danych,

- dołączyć plik haslo.php do tworzonego programu przed połączeniem z bazą danych (instrukcją include - patrz wyżej),

- instrukcja służąca do połączenia z bazą danych ma wtedy następującą postać:

$conn=pg_connect(“dbname=xxxCy user=xxxCy password=$h”);

  1. Wykonanie zapytania zapisanego w zmiennej $query:

$result=pg_query($conn, $query);

Przykład:

$query=”select * from tabela”;

$result=pg_query($conn, $query);

  1. Jeśli kwerenda jest wybierająca, dostęp do danych wybranych z bazy na­stę­puje za pośrednictwem zmiennej $result. Korzystając z niej można m.in.:

$liczbaWierszy=pg_numrows($result);$liczbaKolumn=pg_numfields($result);

pg_result($result, wiersz, kolumna)

pg_field_name($result, nr_kolumny)

nr_kolumny to liczba całkowita oznaczająca numer kolumny w tabeli wynikowej zapytania (kolumny numerowane są od 0)

$wiersz=pg_fetch_array($result,$numerWiersza [,typIndeksu]);

typIndeksu jest opcjonalny i może być równy:

PGSQL_ASSOC - indeksami tablicy $wiersz są nazwy kolumn tabeli zwróconej przez zapytanie SQL,

PGSQL_NUM - indeksami tablicy $wiersz są liczby całkowite (począwszy od 0),

PGSQL_BOTH (wartość domyślna) - tablica $wiersz jest indeksowana zarówno liczbami jak i nazwami kolumn.

Jeśli typem indeksu jest PGSQL_ASSOC, $wiersz jest tablicą asocjacyjną. Aby uzyskać nazwę indeksu (czyli w naszym przypadku nazwę kolumny tabeli zwróconej przez zapytanie), należy użyć funkcji key:

key($wiersz);

Dostęp do elementów tablicy następuje po podaniu jej nazwy i indeksu w na­wia­sach kwadratowych (elementy tablicy są numerowane od 0):

$wiersz[0]

lub, gdy tablica jest asocjacyjna:

$wiersz[`nazwaPola']

Podczas wykonywania operacji na tablicach można m.in. wykorzystać funkcje:

current($tablica)

zwraca wartość aktualnego elementu tablicy, jeśli aktualny element nie istnieje, funkcja zwraca FALSE,

next($tablica)

uaktywnia następny element tablicy i zwraca jego wartość, jeśli następny element nie istnieje funkcja zwraca FALSE,

reset($tablica)

uaktywnia pierwszy element tablicy,

  1. Jeśli kwerenda jest funkcjonalna, można skorzystać z funkcji

pg_affected_rows, która zwraca liczbę zmodyfikowanych wierszy w bazie danych:

Przykład:

$liczbaWierszy=pg_affected_rows($result);



Wyszukiwarka

Podobne podstrony:
bd2 08wu help, UEK, Projektowanie serwisów internetowych
bd2 09php zadanie, UEK, Projektowanie serwisów internetowych
bd2 04form help, UEK, Projektowanie serwisów internetowych
bd2 02html help, UEK, Projektowanie serwisów internetowych
bd2 08wu zadanie, UEK, Projektowanie serwisów internetowych
bd2 08wu, UEK, Projektowanie serwisów internetowych
bd2 13ankieta, UEK, Projektowanie serwisów internetowych
bd2 11XML, UEK, Projektowanie serwisów internetowych
Zaawansowane techniki projektowania serwisów Internetowych, 2431, Prace, Informatyka
Projektowanie funkcjonalnych serwisow internetowych
Projektowanie funkcjonalnych serwisow internetowych pfunki
Projektowanie funkcjonalnych serwisow internetowych
Projektowanie funkcjonalnych serwisow internetowych pfunki
Projektowanie funkcjonalnych serwisow internetowych pfunki
Projektowanie funkcjonalnych serwisów internetowych
Projektowanie funkcjonalnych serwisow internetowych pfunki
Projektowanie funkcjonalnych serwisow internetowych
Projektowanie Funkcjonalnych Serwisów Internetowych (Helion)

więcej podobnych podstron