[ Pobierz całość w formacie PDF ]
.ÿþPHP jako interfejs PostgreSQLadr in\.Krzysztof Juszkiewicz Wiedza" Strona główna: http://www.php.net/" Mirrory w Polsce:http://pl.php.net/ (mainseek.com)http://pl2.php.net/ (estrefa.pl)" Manual: http://www.php.net/manual/en/" Po polsku: http://www.php.net/manual/pl/" Polski FAQ usenetowy: http://php.faq.pl/" PrzykÅ‚ady: http://eit.agh.edu.pl/~juszkiew(mogÄ… pojawić siÄ™ nowe w zale\noÅ›ci od potrzeb)2 Cechy PHP" JÄ™zyk interpretowanyWersje PHP:vs.szybkość,?????? v.6.0," PrzenoÅ›ność i1.03.07 v.4.4.6,popularność,8.02.07 v.5.2.1," Du\a liczba modułów,13.07.04 v.5.0," Rozwojowość, 22.04.02 v.4.2.0,10.12.01 v.4.1.0," Dynamiczne zmienne,22.05.00 v.4.0," Wyra\enia regularne," Obiektowość3 Najprostszy plik php" Nazwa z rozszerzeniem.php(np.plik.php)" Kod php pomiÄ™dzy znacznikamilub" Mo\na uruchomić  z palca(np.php plik.php)4 Kod PHP a HTML" AÄ…czenie kodu HTML z programem w PHPdaje mo\liwość warunkowego wyÅ›wietlaniakodu HTML.wartość:5 Schemat pliku PHP" start sesji," poÅ‚Ä…czenie do bazy danych," operacje na bazie (modyfikacje, wyciÄ…ganiedanych)," prezentacja efektów w HTML" rozÅ‚Ä…czenie bazÄ…6 Zmienne skalarne" Liczba: $x = 3;" Tekst: $y='tekst'; $z="tekst $x";Zmienne wektorowe$w=array();" Pusta lista:count($w);" Liczba elementów:$w[]="wart";" Dodanie na koniec:$w[7]=$x;" Ustawienie ósmego elementu:7 Typy wartoÅ›ci" Nieustawiona: NULL, isset(),unset()," FaÅ‚sz: False, 0, 0.0, "", "0",array()," yle: jeÅ›li sprawdzmy wartość nieustawionÄ…:PHP Notice: Undefined variable8 Tablice sÄ… asocjacyjne (hasze)$h=array('A'=>3);" Tworzenie:$h['A'] = 3;" Wartość dla klucza:array_push()array_shift()Tablicaarray_pop()array_unshift()Niepotrzebna jest konwersja z tablicy na hasz9 ObsÅ‚uga tablicDla jest zÅ‚10 Zmienne predefiniowane" $_SERVER serwera (te\ nagłówki HTTP)" $_ENV Å›rodowiska" $_COOKIE ciastek" $_GET metody GET" $_POST metody POST" $_REQUEST trzy powy\sze" $_FILES odbierania plików" $_SESSION sesyjne11 Problemy cudzysÅ‚owówDodawanie odwrotnych ukoÅ›ników \$w = pg_escape_string($w);$query = "SELECT id FROM tabela WHEREnazwa='$w'";Zamiana (&,,") na encje z ampersandami &xxx;Lepsza funkcja: htmlentities12 Typowe zapytania" ModyfikujÄ…ce wiersze  affected rows: INSERT, UPDATE, DELETE" WyciÄ…gajÄ…ce dane: SELECT * FROM.numery0 1 2 3 4 5kolumnimie nazw data konto debet innenazwy.wiersze.(rows).13 PHP  funkcje (po zmianie 4.2.0)$dbconn = pg_connect ("dbname=nazwa_bazypoÅ‚Ä…czenieuser=uzytkownik password=haslo");zapytanie SQL$res = pg_query($dbconn,$sql);liczba po SELECT$num = pg_num_rows ($res);liczba po NON-SELECT$num = pg_affected_rows($res);wiersz wyniku$arr = pg_fetch_array($res);wiersz wyniku$arr = pg_fetch_assoc($res);wszystkie wiersze$arr = pg_fetch_all($res);ostatni OID$oid = pg_last_oid($res);rozÅ‚Ä…czeniepg_close($dbconn);14 ObsÅ‚uga bÅ‚Ä™dówOperator ignorowania bÅ‚Ä™dów @:$dbconn = @pg_connect();Tekst ostatniego bÅ‚Ä™du w poÅ‚Ä…czeniu:$str = pg_last_error();Tekst bÅ‚Ä™du dla wyniku $res:$str = pg_result_error($res);Tekst ostatniej informacji serwera:$str = pg_last_notice($dbconn);15 PHP przykÅ‚ad fetch_array,16 PHP przykÅ‚ad fetch_assoc17 Transakcje" Nie da siÄ™ trzymać pomiÄ™dzy \Ä…daniamiWWW, bo nie ma pewnoÅ›ci na trafienie dotego samego procesu." Nie ma specjalnych funkcji w PHP wykonuje siÄ™ pg_query z kolejnymikomendami (mo\na w jednym wywoÅ‚aniu).18 New func.>= 5.1.0, psql >= 7.4Nie dziaÅ‚ajÄ… na EiT (7.3.1)$dbconn = pg_connect (".");$result = pg_prepare($dbconn, "myq",'SELECT fname FROM pers WHERE sname = $1');$result = pg_execute($dbconn, "myq",array("Juszkiewicz"));$result = pg_execute($dbconn, "myq",array("Stankiewicz"));19 Sesje  pamiÄ™tanie wartoÅ›ci" Przekazywany tylko identyfikator sesji" Przed jakimkolwiek kodem HTML funkcjasession_start()" Mo\na przekazywać jedynie wartoÅ›cizmiennych (nie referencje)" Odczytujemy i zapisujemy $_SESSION" Inne funkcje session_ obsÅ‚ugizmiennych mogÄ… nie dziaÅ‚ać20 Zalecenia" Nie wykorzystywać kolejnoÅ›ci kolumn wbazie (SELECT *) przez odniesienianumeryczne" Jak najwiÄ™cej pracy przez silnik bazy (np.sortowanie, wybieranie)" Oddzielać kod PHP i HTML  nie stosowaćfunkcji echo i print*" Nie korzystać ze staÅ‚ych poÅ‚Ä…czeÅ„21 Pomocne funkcje" pokazywanie bÅ‚Ä™dów:error_reporting(value)" wyÅ›wietlanie wektorów:print_r($arr), var_dump($arr)" dostowanie zmiennych:extract($_REQUEST,EXTR_SKIP)" konwersja znaków nowych wierszy:nl2br($tekst)22 Pecl i Pearpecl.php.net  PHP ExtensionCommunity Library  serwis z dodatkowymirozszerzeniami do PHP (w C).pear.php.net  PHP Extension andApplication Repository  serwis podobny zwiÄ™kszÄ… liczbÄ… modułów i instalatorem:pear install23 Obiektowośćkonstruktor (__construct),destruktor (__destruct).24 Szablon Smarty index.tplInformacja o u\ytkownikuNazwisko: {$name|capitalize}{html_image file="picture.gif"}{include file="footer.tpl"}25 Cechy Smarty" Rozdzielenie kodu HTML od aplikacji," Aatwość zmiany wyglÄ…du," WiÄ™ksza szybkość dziaÅ‚ania (cache).include('Smarty.class.php');$smarty = new Smarty;$smarty->caching = true;$smarty->assign('name', 'juszkiewicz');$smarty->display('index.tpl');26 [ Pobierz caÅ‚ość w formacie PDF ]

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • fisis2.htw.pl
  • Copyright © 2016 (...) chciaÅ‚bym posiadać wszystkie oczy na ziemi, żeby patrzeć na Ciebie.
    Design: Solitaire