Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Współpraca PHP i MySQL Wygodniejszym i wydajniejszym sposobem przechowywania i korzystania z danych zapisanych na serwerze jest współpraca z relacyjna.

Podobne prezentacje


Prezentacja na temat: "Współpraca PHP i MySQL Wygodniejszym i wydajniejszym sposobem przechowywania i korzystania z danych zapisanych na serwerze jest współpraca z relacyjna."— Zapis prezentacji:

1 Współpraca PHP i MySQL Wygodniejszym i wydajniejszym sposobem przechowywania i korzystania z danych zapisanych na serwerze jest współpraca z relacyjna bazą danych. Baza taka składa się z tabel powiązanych ze sobą relacjami, które pozwalają na logiczne łączenie danych z różnych tabel.

2 Tworzenie bazy danych Aby utworzyć bazę na lokalnym komputerze musimy zainstalować specjalne oprogramowanie np. XAMPP. Po zainstalowaniu włączamy Apache i MySQL.

3 Gdy już nasza baza będzie aktywna, klikamy w przycisk „Admin” i czekamy aż uruchomi się PhpMyAdmin.

4 PhpMyAdmin jest narzędziem, pozwalającym zarządzać bazą danych MySQL, która została utworzona na serwerze. Program ten zapewnia realizacje wszystkich podstawowych funkcji: tworzenie i usuwanie tabel, umieszczanie rekordów (także z przygotowanego wcześniej pliku) oraz administrację bazą.

5 Tworzenie nowego użytkownika bazy Klikamy w User accounts (użytkownicy) Dodajemy nowego użytkownika

6 Uzupełniamy pola Imię Nazwa hostingu. Nasz to localhost Hasło Niżej nadajemy odpowiednie uprawnienia i potwierdzamy dodanie użytkownika. Tak wygląda dodany użytkownik

7 W celu polaczenia się z bazą danych należy stworzyć bazę, utworzyć w niej tabele oraz wprowadzić dane. PhpMyAdmin udostępnia zakładkę SQL, w której istnieje możliwość wprowadzenia ciągu instrukcji w języku MySQL, pozwalających za jednym razem utworzyć prostą strukturę bazy.

8 Dodawanie bazy i tabel Wpisujemy CREATE DATABASE nazwa_bazy; Pozytywne dodanie nowej bazy

9 Wprowadzanie danych do tabeli poprzez instrukcje w języku MySQL Nasza instrukcja CREATE TABLE filmy { ID INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (ID), Tytul VARCHAR(35), Rezyser VARCHAR(35), Czas INT); INSERT INTO filmy VALUES (NULL, „Pan Tadeusz”, „A. Wajda”, 207); INSERT INTO filmy VALUES (NULL, „Matrix”, „A. Wachowski”, 196); INSERT INTO filmy VALUES (NULL, „Shrek”, „A. Adamson”, 150);

10 Pojawiła nam się nowa tabela „filmy”

11 Opis instrukcji W pierwszej linijce nakazujemy utworzenie tabeli o podanej nazwie. Nawias rozpoczyna definicję jej struktury. Przyjrzyjmy się zatem poszczególnym polom: id - pole to będzie przechowywało liczbowy, jednoznaczny identyfikator rekordu. Dwa rekordy nie mogą posiadać tego samego ID. Pole to powinny posiadać w zasadzie wszystkie tabele, gdyż jest ono podstawą relacji oraz systemów zarządzania bazą. Parametry to: INT - typ liczbowy NOT NULL - pole nie może być puste AUTO_INCREMENT - MySQL automatycznie będzie dbał o nadawanie nowo dodawanym rekordom kolejnych ID. PRIMARY KEY - klucz główny określający przeznaczenie tego pola jako podstawy do identyfikacji rekordów. tytul - tutaj będziemy umieszczali tytuł filmu. rezyser - tutaj będziemy umieszczali imię i nazwisko reżysera. Parametry to: VARCHAR(35) - typ tekstowy. Maksymalna długość to 35 znaków. Czas - tutaj będziemy umieszczali długość filmu w minutach. Parametry to: INT - liczba czterobajtowa. Wartości od do , a bez znaku od 0 do

12 Dodawanie rekordów: INSERT INTO filmy VALUES (NULL, "Pan Tadeusz", "A. Wajda", 207); INSERT INTO filmy VALUES (NULL, "Matrix", "A. Wachowski", 196); INSERT INTO filmy VALUES (NULL, "Shrek", "A.Adamson", 150); Aby dodać rekord do tabeli, należy wysłać zapytanie INSERT. Ma ono generalnie dwie możliwe składnie: INSERT INTO `tabela` VALUES('Wartość pola 1', 'Wartość pola 2', 'Wartość pola 3'); INSERT INTO `tabela` (`pole1`, `pole2`, `pole3`) VALUES('Wartość pola 1', 'Wartość pola 2', 'Wartość pola 3'); Oba powodują utworzenie nowego rekordu w podanej tabeli, lecz istnieje między nimi pewna różnica. W pierwszym zapytaniu musimy bezwzględnie podać wartości wszystkich pól nowego rekordu, jakie mamy zdefiniowane w strukturze tabeli, w identycznej kolejności. Drugie zapytanie pozwala nam w pierwszym z nawiasów wymienić listę pól, jakie nas interesują i dopiero potem podać ich wartości. W praktyce znacznie częściej używa się właśnie jego, gdyż nie trzeba podawać wartości pól ID, które nadawane są przez bazę automatycznie.

13 Mając bazę danych wypełnioną danymi, można przystąpić do wykonania połączenia z poziomu języka PHP. W przypadku instrukcji połączenia z bazą, wyboru bazy i wykonania zapytania warto wprowadzić dodatkową konstrukcję or die(), która w przypadku niepowodzenia pierwszej instrukcji wyprowadzi w oknie strony informacje tekstową i przerwie działanie skryptu.

14 Połączenie z bazą danych i pobieranie danych

15 Opis całego kodu Tworzenie zmiennej połączenieNazwa hostuKlientHasło klienta Łączenie z bazą Podczas niepowodzenia wyskakuje komunikat Ustawia aktywną bazę danych na serwerze określonym przez podany identyfikator połączenia. Kolejne wywołania funkcji mysql_query() będą dotyczyły aktywnej bazy danych. $polaczenie=mysql_connect("localhost", "Dominik", "zadanie") or die("Brak połaczenia z serwerem MySQL"); mysql_select_db("baza_filmow",$polaczenie) $zapytanie="Select * FROM filmy"; Utworzenie zmiennej zapytanie która wybiera wszystkie kolumny z tabeli filmy.

16 $wynik=mysql_query($zapytanie) or die("Wystąpiły problemy przy zapisywaniu danych"); mysql_query() zwraca identyfikator wyniku (lub FALSE w przypadku niepowodzenia) jedynie dla zapytań typu SELECT, SHOW, EXPLAIN i DESCRIBE. Dla innych zapytań SQL mysql_query() zwraca TRUE lub FALSE informując czy zapytanie zakończyło się sukcesem czy też nie. Jeśli nie została zwrócona wartość FALSE to znaczy, że zapytanie było prawidłowe i może być wykonane przez serwer. Nie mówi natomiast nic o liczbie przetworzonych lub zwróconych wierszy. Jest również możliwe, że zapytanie zostanie wykonane poprawnie, nie przetwarzając lub zwracając żadnych wierszy. Tworzenie zmiennej wynik

17 while ($wiersz_danych = mysql_fetch_row($wynik)) { for ($i=0;$i

18 Efekt naszej pracy Jeżeli wszystko zrobiliśmy zgodnie z instrukcjami to na stronie powinna się wyświetlić cała tabela filmy z baza_filmów.

19 Pobieranie danych z bazy do tabeli W naszym kodzie pojawi się instrukcja mysql_fetch_assoc() array mysql_fetch_assoc ( resource $wynik ) Zwraca tablicę zawierającą pobrany wiersz, lub FALSE jeżeli nie ma więcej wierszy w wynik. Użycie mysql_fetch_assoc() jest równoznaczne z wywołaniem mysql_fetch_array() podając jako drugi argument MYSQL_ASSOC. Zwraca jedynie tablicę asocjacyjną. Początkowo tak właśnie zachowywała się funkcja mysql_fetch_array(). Jeśli oprócz indeksowania asocjacyjnego potrzebujesz także numeryczne, użyj funkcji mysql_fetch_array(). 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 przy użyciu funkcji mysql_fetch_array(), która wprowadzi również indeksowanie numeryczne.

20 Opis kodu na poprzednich stronach Tworzenie prostej tabeli Wypisywanie danych za pomocą funkcji mysql_fech_assoc. Zamknięcie tabeli i zerwanie połączenia z bazą.

21 Jeżeli wszystko dobrze napisaliśmy otrzymamy taką tabelkę na naszej stronie.

22 Dodawanie nowych wierszy do naszej bazy w celu sprawdzenia czy wszystko działa. Pierwszy wiersz Drugi wiersz

23 A oto efekt. Wszystko działa ;)

24 Dziękuję za uwagę. Dominik Siwek Zespół Szkół Ponadgimnazjalnych w Ryglicach


Pobierz ppt "Współpraca PHP i MySQL Wygodniejszym i wydajniejszym sposobem przechowywania i korzystania z danych zapisanych na serwerze jest współpraca z relacyjna."

Podobne prezentacje


Reklamy Google