SIECI KOMPUTEROWE I BAZY DANYCH

Podobne dokumenty
Szablon główny (plik guestbook.php) będzie miał postać:

Bazy danych. dr Radosław Matusik. radmat

Obiektowe bazy danych

Zajęcia 13 wykorzystanie MySQL w PHP cz. 2

Michał Bielecki, KNI 'BIOS'

SIECI KOMPUTEROWE I BAZY DANYCH

Bazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr Prosta obsługa Bazy w PHP

Współpraca PHP z MySql

ZAAWANSOWANE BAZY DANYCH I HURTOWNIE DANYCH MySQL, PHP

Laboratorium 1 Wprowadzenie do PHP

Współpraca PHP z MySql cz.2

Aplikacje internetowe

SSK - Techniki Internetowe

Zajęcia 11 wykorzystanie MySQL w PHP

Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Informatyki i Elektroniki

MVC w praktyce tworzymy system artykułów. cz. 2

Poszczególne elementy serwisu można umieścić dla porządku w odpowiednio przemyślanym drzewie katalogów, i tak: -

Wprowadzenie do Internetu Zajęcia 5

Aplikacje WWW - laboratorium

Aplikacje internetowe - laboratorium

Zaawansowane aplikacje internetowe

Aplikacje WWW - laboratorium

Projekt strony internetowej firmy organizującej przyjęcia

Aplikacje WWW - laboratorium

Język PHP. Studium Podyplomowe Sieci Komputerowe i Aplikacje Internetowe. v1.7, 2007/11/23

Aplikacje WWW - laboratorium

Dynamiczne generowanie pliku PDF

Aplikacje WWW - laboratorium

INSTALACJA I KONFIGURACJA SERWERA PHP.

PHP + MySQL w laboratorium (1)

Aplikacje WWW - laboratorium

Przykładowa integracja systemu tpay.com KIP S.A. ul. Św. Marcin 73/ Poznań.

Podstawy JavaScript ćwiczenia

Dostęp do baz danych z serwisu www - PHP. Wydział Fizyki i Informatyki Stosowanej Joanna Paszkowska, 4 rok FK

Aplikacje WWW - laboratorium

Podstawowe wykorzystanie Hibernate

Referat z przedmiotu Technologie Internetowe SPIS TREŚCI

Internetowe bazy danych

Odsyłacze. Style nagłówkowe

Technologie Internetowe Raport z wykonanego projektu Temat: Internetowy sklep elektroniczny

Bazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr 8

I. Dlaczego standardy kodowania mailingów są istotne?

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ),

Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL.

Technologie informacyjne lab. 4

Wdrożenie modułu płatności eservice. dla systemu Gekosale 1.4

Young Programmer: HTML+PHP. Dr inż. Małgorzata Janik, Zajęcia #2

Systemy internetowe. Wykład 3 PHP. West Pomeranian University of Technology, Szczecin; Faculty of Computer Science

Przykładowa integracja systemu Transferuj.pl

Baza danych do przechowywania użytkowników

HTML (HyperText Markup Language)

Zajęcia 4 - Wprowadzenie do Javascript

Automatyka i Robotyka ROK III TEMAT: TWORZENIE I ZARZĄDZANIE INTERNETOWĄ BAZĄ DANYCH

Dlaczego PHP? - zalety

Przykład programu w PHP. Wykład10.PHP ciągdalszy,str.1

Na początku utworzymy formularz w czystym języku HTML i przetestujemy go za pomocą przeglądarki WWW.

Internetowe bazy danych

Bazy Danych i Usługi Sieciowe

ASP.NET MVC. Podstawy. Zaawansowane programowanie internetowe Instrukcja nr 3

Systemy internetowe Wykład 3 PHP

Projektowanie aplikacji w modelu MVC opartej o framework CodeIgniter

Formularze w PHP dla początkujących

Internetowe bazy danych

Dokumentacja smsapi wersja 1.4

Zagadnienia. Konstrukcja bibliotek mysql i mysqli w PHP. Dynamiczne generowanie stron. Połączenie, zapytanie i sesja

Funkcje i instrukcje języka JavaScript

Internetowe bazy danych

Aplikacje WWW - laboratorium

Programowanie WEB PODSTAWY HTML

Sprzeg podstawowy do baz danych w PHP Mateusz Sowa, 2007

Autor: Joanna Karwowska

JAK W NAGŁÓWKU STRONY LUB BLOGA

Napisy w PHP. Drukowanie napisów instrukcją echo

13. Konfiguracja proxy http, smtp, pop3, ftp, ssl

Programowanie internetowe

Wyrażenie include(sciezka_do_pliku) pozwala na załadowanie (wnętrza) pliku do skryptu php. Plik ten może zawierać wszystko, co może się znaleźć w

Laboratorium nr 4. Temat: SQL część II. Polecenia DML

TECHNOLOGIE SIECI WEB

Podstawy programowania (PHP/Java)

Tabele. Przykład 15a.htm. <HTML><HEAD><TITLE> Cennik</TITLE></HEAD><BODY><H3>Cennik</H3> <TABLE BORDER="1"> <TR>

Materiały do laboratorium MS ACCESS BASIC

Scenariusz lekcji. Scenariusz lekcji 1 TEMAT LEKCJI: Tablice w PHP 2 CELE LEKCJI: 2.1 Wiadomości: 2.2 Umiejętności: 3 METODY NAUCZANIA

Dane - pobieranie, przekazywanie i przechowywanie. dr Beata Kuźmińska-Sołśnia

Bazy Danych i Usługi Sieciowe

Laboratorium 6 Tworzenie bloga w Zend Framework

Wykład 2 TINT. XHTML tabele i ramki. Zofia Kruczkiewicz

PHP może zostać rozszerzony o mechanizmy dostępu do różnych baz danych:

SMS Kod Automatyczny

Bazy danych w PHP dla początkujących

Architektura WWW. HTML Część I - Podstawy. HTML język tworzenia stron WWW. Znaczniki HTML. Struktura dokumentu HTML. Kodowanie polskich liter

Format HTML. Wybrane działy Informatyki Stosowanej. Definicja i przeznaczenie Struktura dokumentu Znaczniki Formularze i komponenty

Rejestracja i Logowania - PHP/MySQL

Komunikacja między klientem, a skryptem PHP, oraz operacje na plikach

LABORATORIUM 2 WSTĘP DO SIECI TELEINFORMATYCZNYCH TABELE I FORMULARZE

Zdarzenia Zdarzenia onload i onunload

NoSQL Not Only SQL: CouchDB. I.Wojnicki, NoSQL. Apache CouchDB has started. Time to relax. Przetwarzanie dokumentów i widoków.

Projektowani Systemów Inf.

Spis treści. Wstęp 5 Rozdział 1. Praca z AJAX-em 9. Rozdział 2. Współpraca ze skryptami PHP 55. Rozdział 3. Obsługa formularzy 81

Kowalski Marcin Wrocław, dn Jaśkiewicz Kamil Bazy Danych 1 Podstawy Projekt Temat: Baza danych do zarządzania projektami

Transkrypt:

Akademia Górniczo-Hutnicza Wydział Inżynierii Mechanicznej i Robotyki Katedra Robotyki i Dynamiki Maszyn SIECI KOMPUTEROWE I BAZY DANYCH ĆWICZENIE NR 10 Temat: INTERFEJS SYSTEMU BAZODANOWEGO W PHP. BUDOWA PROSTEGO SYSTEMU ZARZĄDZANIA KONTAKTAMI.

CEL ĆWICZENIA: Podsumowanie i praktyczne wykorzystanie wiadomości nabytych z zakresu tworzenia dynamicznych stron WWW. Poznanie szkieletu aplikacji bazodanowej na przykładzie internetowego systemu zarządzania kontaktami osobowymi. 1. TWORZENIE BAZY DANYCH Pierwszym krokiem budowy systemu internetowej bazy danych jest zaprojektowanie i wykonanie bazy danych. W prezentowanym przykładzie będzie to prosta baza danych, zawierająca jedną tabelę, w której zapisywane będą dane interesujących nas osób. W tym celu przyjęto, że będziemy chcieli przechowywać informacje takie jak: - imię osoby [do 30 znaków] - nazwisko osoby [do 50 znaków] - adres osoby [do 100 znaków] - nr. telefonu [do 50 znaków] - email [do 50 znaków] Jako identyfikujące daną osobę przyjęto złączenie pól imię, nazwisko i adres. Następnie wykorzystując phpmyadmin wykonano odpowiednia bazę danych o nazwie kontakty i zawierającej jedną tabelę osoby. Strukturę bazy danych przedstawia Rys.1. Rys.1 Struktura bazy danych z kontaktami osobowymi INTERFEJS SYSTEMU BAZODANOWEGO W PHP 2

2. TWORZENIE INTERFEJSU ZARZĄDZAJĄCEGO BAZĄ DANYCH Mając utworzoną bazę danych umieszczoną na serwerze należy przystąpić do zaplanowania i wykonania odpowiednich interfejsów pozwalających na pokazywanie, dodawanie, usuwanie i zmianę danych zgromadzonych w bazie. Interfejs zostanie wykonany z wykorzystaniem dokumentów HTML wspomaganych skryptami PHP pozwalającymi zrealizować komunikację z bazą danych. W tym celu wykorzystane zostaną wiadomości będące treścią wcześniejszych laboratoriów. System będzie składał się z pięciu plików: 1/ plik index.php jest plikiem głównym zawierającym mechanizm sterujący przełączaniem podstron z właściwą treścią 2/ plik menu.html jest plikiem włączanym poleceniem include do pliku index.php i zawiera proste menu umożliwiające nawigację po systemie 3/ plik dodaj.php jest plikiem realizującym zapis danych do bazy 4/ plik usun.php jest plikiem realizującym usuwanie danych z bazy 5/ plik zmien.php jest plikiem realizującym aktualizację danych w bazie Na Rys.2 przedstawiono wygląd interfejsu systemu po jego uruchomieniu w przeglądarce Poniżej przedstawiono kod pliku index.php <? // plik indem.php Rys.2 Ekran powitalny systemu if(!isset($v)) $tresc = "Witamy w naszym systemie kontaktów!"; else switch($v) case 'pokaz': $tresc = ""; $tresc.= czytajosoby(); break; case 'dodaj': $tresc = ""; $tresc.= formularzosoby(); break; case 'zmien': $tresc = ""; $tresc.= zmiana(); break; INTERFEJS SYSTEMU BAZODANOWEGO W PHP 3

function zmiana() global $i,$n,$a,$tel,$em; $tresc=""; $tresc.=" <FORM ACTION=\"zmien.php\" METHOD=\"POST\"> <TABLE align=\"center\" cellspacing=5 cellpadding=5> <TD>Imię</TD><TD>$i<INPUT TYPE=\"HIDDEN\" NAME=\"imie\" VALUE=\"$i\"></TD> <TD>Nazwisko</TD><TD>$n<INPUT TYPE=\"HIDDEN\" NAME=\"nazwisko\" VALUE=\"$n\"></TD> <TD>Adres</TD><TD><INPUT TYPE=\"TEXT\" NAME=\"adres\" VALUE=\"$a\" SIZE=\"30\"></TD> <TD>Telefon</TD><TD><INPUT TYPE=\"TEXT\" NAME=\"telefon\" VALUE=\"$tel\" SIZE=\"30\"></TD> <TD>email</TD><TD><INPUT TYPE=\"TEXT\" NAME=\"email\" VALUE=\"$em\" SIZE=\"30\"></TD> <TD colspan=\"2\" align=center><input TYPE=\"SUBMIT\" VALUE=\"Zmień\"></TD> </TABLE> </FORM>"; return $tresc; function formularzosoby() $tresc="podaj dane nowej osoby:<br>"; $tresc.=" <FORM ACTION=\"dodaj.php\" METHOD=\"POST\"> <TABLE align=\"center\" cellspacing=5 cellpadding=5> <TD>Imię</TD><TD><INPUT TYPE=\"TEXT\" NAME=\"imie\" SIZE=\"30\"></TD> <TD>Nazwisko</TD><TD><INPUT TYPE=\"TEXT\" NAME=\"nazwisko\" SIZE=\"30\"></TD> <TD>Adres</TD><TD><INPUT TYPE=\"TEXT\" NAME=\"adres\" SIZE=\"30\"></TD> <TD>Telefon</TD><TD><INPUT TYPE=\"TEXT\" NAME=\"telefon\" SIZE=\"30\"></TD> <TD>email</TD><TD><INPUT TYPE=\"TEXT\" NAME=\"email\" SIZE=\"30\"></TD> <TD colspan=\"2\" align=center><input TYPE=\"SUBMIT\" VALUE=\"Dodaj\"></TD> </TABLE> </FORM>"; return $tresc; function czytajosoby() $tresc=""; $query = "SELECT * FROM osoby ORDER BY nazwisko"; $result = mysql_query ($query) or die ("Zapytanie zakończone niepowodzeniem..."); $all = mysql_num_rows($result); if ($all>0) $tresc.="lista osób:<br><table border=0 cellpadding=5 cellspacing=5> <TH>lp</TH> <TH>imię</TH> <TH>nazwisko</TH> <TH>adres</TH> <TH>telefon</TH> <TH>email</TH> <TH> </TH> <TH> </TH> </TR>"; INTERFEJS SYSTEMU BAZODANOWEGO W PHP 4

$counter = 1; while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) $imie = $row['imie']; $nazwisko = $row['nazwisko']; $adres = $row['adres']; $telefon = $row['telefon']; $email = $row['email']; $tresc.=" <TD>$counter</TD> <TD>$imie</TD> <TD>$nazwisko</TD> <TD>$adres</TD> <TD>$telefon</TD> <TD>$email</TD> <TD><A HREF=\"usun.php?imie=$imie&&nazwisko=$nazwisko&&adres=$adres\">usuń</A></TD> <TD> <A HREF= \"index.php?v=zmien&&i=$imie&&n=$nazwisko&&a=$adres&&tel=$telefon&&em=$email\" >zmień</a></td></tr>"; $counter++; $tresc.="</table>"; else $tresc.="baza jest pusta"; return $tresc; <HTML> <HEAD> <META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=iso-8859-2"> <META HTTP-EQUIV="Creation-date" CONTENT="2003-04-27T12:08:09Z"> <META HTTP-EQUIV="Content-Language" CONTENT="pl"> <META HTTP-EQUIV="Pragma" CONTENT="no-cache"> <META NAME="Author" CONTENT="Adam Pietrzyk"> <TITLE>Baza Kontaktów</TITLE> </HEAD> <BODY BGCOLOR="#FFFFCC" LEFTMARGIN="0" TOPMARGIN="0" MARGINWIDTH="0" MARGINHEIGHT="0"> <TABLE border=0 cellpadding=10 cellspacing=10> <TD valign="top" width="25%"> <!-- sekcja menu --> <? include "menu.html"; </TD> <TD align="center" width="75%"> <!-- dynamicznie tworzona sekcja treści strony --> <? echo "$tresc"; </TD> </TR> </TABLE> </BODY> </HTML> Przełączanie podstron realizuje instrukcja switch natomiast treść strony generowana jest w odpowiednich funkcjach związanych z wyborem użytkownika (odpowiedni przypadek case ). Poniżej pokazano listing pliku menu.html <!-- menu.html --> MENU:<br> <br><a HREF="index.php?v=pokaz">Pokaż dane</a> <br><a HREF="index.php?v=dodaj">Dodaj dane</a> Po wybraniu pozycji Pokaż dane wykonywana jest funkcja czytajosoby(), która realizuje połączenie z bazą danych oraz pobranie zawartości tabeli osoby i sformatowanie jej do tabeli a następnie umieszczenie w zmiennej $tresc reprezentującej treść strony. Wynikiem tego jest lista osób znajdujących się w bazie danych pokazana na Rys 3. INTERFEJS SYSTEMU BAZODANOWEGO W PHP 5

Rys.3 Lista osób w bazie danych Jak widzimy każdy rekord zawiera dodatkowo opcje usuń lub zmień które są realizowane w plikach odpowiednio usun.php i zmien.php. Ich listingi przedstawiono poniżej: <? // plik usun.php $sql="delete FROM osoby WHERE imie='$imie' AND nazwisko='$nazwisko' AND adres='$adres'"; $result = mysql_query($sql,$link) or die("zapytanie zakończone niepowodzeniem"); header("location: http://localhost/labbaza/index.php?v=pokaz"); <? // plik zmien.php // sprawdzenie poprawności danych if((!$imie) (!$nazwisko) (!$adres)) header("location: http://localhost/labbaza/index.php?v=zmien"); $sql="update osoby SET adres = \"$adres\", telefon =\"$telefon\", email = \"$email\" WHERE imie='$imie' AND nazwisko='$nazwisko' "; $result = mysql_query($sql,$link) or die("zapytanie zakończone niepowodzeniem"); header("location: http://localhost/labbaza/index.php?v=pokaz"); Dodawanie nowej osoby do bazy realizowane jest po wybraniu w menu pozycji Dodaj dane co powoduje pokazanie formularza umożliwiającego wprowadzanie danych. Wprowadzone dane zostają zapisane poprzez wykonanie pliku dodaj.php. <? // plik dodaj.php INTERFEJS SYSTEMU BAZODANOWEGO W PHP 6

// sprawdzenie poprawności danych if((!$imie) (!$nazwisko) (!$adres)) header("location: http://localhost/labbaza/index.php?v=dodaj"); $sql="insert INTO osoby(imie,nazwisko,adres,telefon,email) VALUES (\"$imie\",\"$nazwisko\",\"$adres\",\"$telefon\",\"$email\")"; $result = mysql_query($sql,$link) or die("zapytanie zakończone niepowodzeniem"); header("location: http://localhost/labbaza/index.php?v=pokaz"); Poniższy rysunek przedstawia wygląd formularza wprowadzania danych. Rys.4 Formularz wprowadzania danych osobowych Powyższy przykład jest wprawdzie bardzo prosty jednak pokazuje metodykę tworzenia internetowej bazy danych. Załączone fragmenty kodu powinny pomóc czytelnikowi w samodzielnym tworzeniu interfejsów komunikacji z bazą danych. ZADANIA DO WYKONANIA 1. Wykonać swój własny system komunikacji z bazą danych INTERFEJS SYSTEMU BAZODANOWEGO W PHP 7