Różnice między wybraną wersją a wersją aktualną.
Poprzednia rewizja po obu stronach Poprzednia wersja Nowa wersja | Poprzednia wersja | ||
pl:paw:lab_paw_php_4 [2021/03/19 16:08] wojnicki [Ćwiczenie 3: Klasy i obiekty, generacja dokumentów PDF] |
pl:paw:lab_paw_php_4 [2022/01/11 15:17] (aktualna) wojnicki [Ćwiczenie 3: Klasy i obiekty, generacja dokumentów PDF] |
||
---|---|---|---|
Linia 3: | Linia 3: | ||
===== Ćwiczenie 1: Dostęp do zewnętrznych danych ===== | ===== Ćwiczenie 1: Dostęp do zewnętrznych danych ===== | ||
- | Przetestuj działanie poniższych programów. Widzisz różnicę? | + | Przetestuj działanie poniższych programów. Widzisz różnicę? |
- | <code php> | + | < |
<?php | <?php | ||
- | $c=curl_init(' | + | $c=curl_init(' |
curl_setopt($c, | curl_setopt($c, | ||
$dane=curl_exec($c); | $dane=curl_exec($c); | ||
Linia 15: | Linia 15: | ||
</ | </ | ||
- | <code php> | + | < |
<?php | <?php | ||
- | $c=curl_init(' | + | $c=curl_init(' |
curl_setopt($c, | curl_setopt($c, | ||
$dane=curl_exec($c); | $dane=curl_exec($c); | ||
curl_close($c); | curl_close($c); | ||
- | echo str_replace(' | + | echo str_replace(' |
?> | ?> | ||
</ | </ | ||
Linia 57: | Linia 57: | ||
W PHP obsługę komunikacji z Wikipedią można zaprogramować w poniższy sposób. | W PHP obsługę komunikacji z Wikipedią można zaprogramować w poniższy sposób. | ||
- | <code php> | + | < |
$c=curl_init(' | $c=curl_init(' | ||
curl_setopt($c, | curl_setopt($c, | ||
Linia 68: | Linia 68: | ||
} | } | ||
</ | </ | ||
+ | |||
+ | Uwaga, jeżeli w haśle wystąpią znaki diakrytyczne należy użyć funkcji: '' | ||
Więcej informacji o przetwarzaniu JSON można znaleźć pod adresem: http:// | Więcej informacji o przetwarzaniu JSON można znaleźć pod adresem: http:// | ||
Linia 87: | Linia 89: | ||
- | Do przesyłania danych wykorzystaj biblioteke CURL: | + | Do przesyłania danych wykorzystaj biblioteke CURL (Uwaga: jeżeli dostęp do CouchDB jest chroniony, we wszystkich poniższych adresach HTTP trzeba dodać informacje o nazwie użytkownika i haśle tj.: http://... -> http:// |
- | <code php> | + | < |
<?php | <?php | ||
$c=curl_init(' | $c=curl_init(' | ||
Linia 130: | Linia 132: | ||
Do przesyłania danych można również wykorzystać '' | Do przesyłania danych można również wykorzystać '' | ||
- | <code php> | + | < |
$h=fopen(" | $h=fopen(" | ||
if ($h) { | if ($h) { | ||
Linia 145: | Linia 147: | ||
==== Informacje dodatkowe: Dostęp do bazy CouchDB ==== | ==== Informacje dodatkowe: Dostęp do bazy CouchDB ==== | ||
- | Przetestuj działanie skryptu couchshell.php: | + | Przetestuj działanie skryptu couchshell.php: |
< | < | ||
Linia 227: | Linia 229: | ||
Dostarczona jest struktura danych (np. pochodząca z odczytu z bazy danych) przechowująca informacje o flocie samochodów: | Dostarczona jest struktura danych (np. pochodząca z odczytu z bazy danych) przechowująca informacje o flocie samochodów: | ||
- | <code php> | + | < |
// dane: marka samochodu, kolor, nr rej., przebieg, stan techniczny | // dane: marka samochodu, kolor, nr rej., przebieg, stan techniczny | ||
$dane = array( | $dane = array( | ||
Linia 239: | Linia 241: | ||
Celem ćwiczenia jest napisanie programu w PHP generującego dokument PDF, który pokaże powyższe dane w postaci {{ : | Celem ćwiczenia jest napisanie programu w PHP generującego dokument PDF, który pokaże powyższe dane w postaci {{ : | ||
- | Do wykonania ćwiczenia użyj popularnej biblioteki TCPDF https:// | + | Do wykonania ćwiczenia użyj popularnej biblioteki TCPDF https:// |
Biblioteka jest w całości napisana w PHP. | Biblioteka jest w całości napisana w PHP. | ||
Aktualną wersję możesz pobrać z: https:// | Aktualną wersję możesz pobrać z: https:// | ||
- | Archiwum rozpakuj w katalogu, z Twoimi skryptami PHP (uwaga musisz nadac odpowiednie prawa dostępu | + | Archiwum rozpakuj w katalogu, z Twoimi skryptami PHP (zwróć uwagę na odpowiednie prawa dostępu). |
Przykład użycia biblioteki znajdziesz poniżej. | Przykład użycia biblioteki znajdziesz poniżej. | ||
- | <code php> | + | < |
require_once(' | require_once(' | ||
Linia 262: | Linia 264: | ||
Do sporządzenia tabelki możesz użyć metody '' | Do sporządzenia tabelki możesz użyć metody '' | ||
- | Z w/w danych wygeneruj tabelkę w HTML, którą przypisz do zmiennej np. '' | + | Z w/w danych wygeneruj tabelkę w HTML, którą przypisz do zmiennej np. '' |
- | <code php> | + | < |
require_once(' | require_once(' | ||
Linia 297: | Linia 299: | ||
Do przetestowania działania klasy możesz użyć poniższego kodu. | Do przetestowania działania klasy możesz użyć poniższego kodu. | ||
- | <code php> | + | < |
<?php | <?php | ||
$logowanie = new Logowanie(); | $logowanie = new Logowanie(); | ||
Linia 315: | Linia 317: | ||
Dostęp do bazy danych PostgreSQL na charonie albo borgu można zrealizować w poniższy sposób. | Dostęp do bazy danych PostgreSQL na charonie albo borgu można zrealizować w poniższy sposób. | ||
- | <code php> | + | < |
<?php | <?php | ||
$dbh = new PDO(' | $dbh = new PDO(' | ||
Linia 326: | Linia 328: | ||
W przypadku korzystania z tego samego serwera dla skrytpow PHP i bazy danych, do PostgreSQL można podłączyć się nie używając hasła w następujący sposób. | W przypadku korzystania z tego samego serwera dla skrytpow PHP i bazy danych, do PostgreSQL można podłączyć się nie używając hasła w następujący sposób. | ||
- | <code php> | + | < |
<?php | <?php | ||
$dbh = new PDO(' | $dbh = new PDO(' | ||
Linia 340: | Linia 342: | ||
Dostęp do bazy danych MySQL na serwerze mysql.agh.edu.pl (hsło dostępowe mozna uzyskac przez panel AGH: https:// | Dostęp do bazy danych MySQL na serwerze mysql.agh.edu.pl (hsło dostępowe mozna uzyskac przez panel AGH: https:// | ||
- | <code php> | + | < |
<?php | <?php | ||
$dbh = new PDO(' | $dbh = new PDO(' |