0.1 Logowanie do serwisu

Podobne dokumenty
Zajęcia 10 obsługa formularzy w PHP

E.14 Bazy Danych cz. 19 SQL i PHP współpraca przez stronę internetową

Baza danych do przechowywania użytkowników

Języki programowania wysokiego poziomu. PHP cz.3. Formularze

Języki programowania wysokiego poziomu. Ćwiczenia

Przekazywanie danych. Dane zewnętrzne mogą pochodzić z róŝnych źródeł:

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

Zajęcia 11 wykorzystanie MySQL w PHP

Wykład 5: PHP: praca z bazą danych MySQL

Instrukcja obsługi Uczeń. Spis Treści

Języki programowania wysokiego poziomu. Forum

Wprowadzenie do Doctrine ORM

Dokumentacja serwisu internetowego Zespołu Szkół Technicznych w Radomiu.

Wysyłanie pliku na serwer. Plik na serwerze.

Internetowe bazy danych

INSTRUKCJA INTEGRACJI SYSTEMU PAYMENTO z SHOPER (SAS)

Formularze Pobierają dane od użytkownika strony i wysyłają je do przetworzenia na serwerze (gdzie potrzebne są skrypty,któredaneprzetworzą najczęściej

Języki programowania wysokiego poziomu. Blog

Aplikacje internetowe

Sprawdzenie czy połączenie przebiegło poprawnie if (mysqli_connect_errno()) { echo Błąd; Połączenie z bazą danych nie powiodło się.

ZAAWANSOWANE BAZY DANYCH I HURTOWNIE DANYCH MySQL, PHP

INTERNETOWE BAZY DANYCH materiały pomocnicze - wykład VII

Bazy danych w PHP dla początkujących

Sesje, ciasteczka, wyjątki. Ciasteczka w PHP. Zastosowanie cookies. Sprawdzanie obecności ciasteczka

INSTRUKCJA OBSŁUGI. Proces rejestracji i logowania

Rejestracja i Logowania - PHP/MySQL

ADMINISTRATOR SZKOŁY. Instrukcja użytkownika portalu

Podstawy technologii WWW


Wprowadzenie do Internetu Zajęcia 5

Programowanie w Sieci Internet Python - c. d. Kraków, 28 listopada 2014 r. mgr Piotr Rytko Wydział Matematyki i Informatyki

Laboratorium 6 Tworzenie bloga w Zend Framework

Przewodnik użytkownika Bazy Ogłoszeń

Aplikacje WWW - laboratorium

Instrukcja założenia konta na epuap oraz złożenie wniosku o profil zaufany

Instrukcja obsługi/instalacji platformy Krok w Przedsiębiorczość Administrator platformy

KRÓTKA INSTRUKCJA OBSŁUGI SYSTEMU NEWSÓW. O systemie

ZPKSoft WDoradca. 1. Wstęp 2. Architektura 3. Instalacja 4. Konfiguracja 5. Jak to działa 6. Licencja

Obsługa. Portalu Dostawcy

Kontrola sesji w PHP HTTP jest protokołem bezstanowym (ang. stateless) nie utrzymuje stanu między dwoma transakcjami. Kontrola sesji służy do

Autor: Joanna Karwowska

INSTRUKCJA UŻYTKOWNIKA. Wielkopolski system doradztwa. edukacyjno-zawodowego

Aplikacje webowe w obliczu ataków internetowych na przykładzie CodeIgniter Framework

Zakładanie konta dla sędziego, obserwatora lub delegata

Instalacja systemu zarządzania treścią (CMS): Joomla

Rejestracja Czasu Pracy RCP Instrukcja

Skrócona instrukcja korzystania z Platformy Zdalnej Edukacji w Gliwickiej Wyższej Szkole Przedsiębiorczości

Aplikacje internetowe - laboratorium

Platforma e-learningowa

Platforma e-learningowa

Bezpieczeństwo systemów komputerowych

PORADNIK UŻYTKOWNIKA SYSTEMU BANKOWOSCI INTERNETOWEJ KIRI. BS W POWIATOWYM BANKU SPÓŁDZIELCZYM W LUBACZOWIE

Aplikacja do zarządzania kontami bankowymi

Sesje i logowanie. 1. Wprowadzenie

Wykład 6: PHP: praca z bazą danych MySQL, cz.2

Laboratorium 7 Blog: dodawanie i edycja wpisów

Kadry Optivum, Płace Optivum. Jak przenieść dane na nowy komputer?

Styczeń 2017 QVX. System dziekanatowy instrukcja dla. studentów. Just dream IT, we do the rest. Instrukcja do systemu dziekanatowego dla studentów.

Zbiór pytań nr 5. 2 Które stwierdzenie opisuje najlepiej zbiór uprawnień dostępny po wykonaniu

Konfiguracja Trimble Access Sync

Spis treści. Instrukcja rejestracji w systemie Best of Five

INSTRUKCJA OBSŁUGI Proces rejestracji i logowania

Kadry Optivum, Płace Optivum. Jak przenieść dane na nowy komputer?

Płace Optivum. 1. Zainstalować serwer SQL (Microsoft SQL Server 2008 R2) oraz program Płace Optivum.

Pierwsze logowanie do systemu Uczniowie Optivum NET

Kontrola dostępu w ASP.NET

Instrukcja składania wniosku o dofinansowanie w systemie informatycznym IP na potrzeby konkursu nr 1/4.1.4/2016

Dokumentacja smsapi wersja 1.4

Integracja frameworku Wicket z serwisem Platnosci.pl.

Telesprzedaż by CTI Instrukcja

Zakładanie konta w JSA przez administratora JSA. Rozpocznij

Aplikacje WWW - laboratorium

Rejestrowanie pracownika w bazie danych przez administratora. 1. Zaloguj się do systemu UONET+ jako administrator i uruchom moduł Administrowanie.


6. Bezpieczeństwo przy współpracy z bazami danych

Najważniejsze informacje dla klienta na temat Portalu Serwisowego D-Link Spis treści

INSTRUKCJA UŻYTKOWNIKA

CREATE USER

MATERIAŁY - udostępnianie materiałów dydaktycznych w sieci SGH

mysql> UPDATE user SET Password=PASSWORD('pass') WHERE user='root'; Query OK, 2 rows affected (0.05 sec) Rows matched: 2 Changed: 2 Warnings: 0

Integracja systemu trigocms! z platformą Facebook

BAZY DANYCH. Obsługa bazy z poziomu języka PHP. opracowanie: Michał Lech

Panel dla agentów. Instrukcja obsługi dla agentów

3S TeleCloud - Aplikacje Instrukcja użytkowania usługi 3S SMS SYSTEM

Bezpieczeństwo Systemów Informacyjnych lab. 13

Instrukcja dodawania monografii e_monografii

Tworzenie witryn internetowych PHP/Java. (mgr inż. Marek Downar)

Laboratorium 1 Wprowadzenie do PHP

KONKURS Ostatnia Imię i nazwisko Zakres wprowadzanych zmian aktualizacja

Aplikacje WWW - laboratorium

Instrukcja obsługi Nauczyciel. Spis Treści

Menu główne. Przedmiot: Programowanie usług internetowych - Delphi Przygotował: K. Strzałkowski Rok V. Semestr IX. Wydział ZiMK

5. Współpraca z bazą danych MySQL

Dokumentacja systemu NTP rekrut. Autor: Sławomir Miller

Zakładanie kont i nadawanie uprawnień pracownikom jednostki oświatowej

Instrukcja obsługi platformy B2B ARA Pneumatik

Facebook, Nasza klasa i inne. podstawowe informacje o serwisach społeczności internetowych. Cz. 2. Facebook

Instrukcja logowania do Portalu Rachunkowość

mysupport Instrukcja obsługi dla użytkowników

Instrukcja użytkownika

Transkrypt:

0.1. LOGOWANIE DO SERWISU 1 0.1 Logowanie do serwisu Tematem przewodnim będzie stworzenie systemu logowania do strony. I to takiego systemu, który będzie łączył się z bazą danych MySQL. Jeśli zaś chodzi o bezpieczeństwo tworzonego systemu logowania, to póki co zabezpieczymy naszą witrynę przed tzw. wstrzykiwaniem SQL. Stworzymy grę internetową Osadnicy. Po zalogowaniu się na konto, użytkownik zobaczy swój profil. Wyjście ze strony nie spowoduje wylogowania się, jedynie zbyt długi czas, czyli po skończeniu się sesji to użytkownik zostanie automatycznie wylogowany lub gdy kliknie na przycisk wyloguj. 1. Otwórz folder Osadnicy a w nim plik index.php. Otwórzmy go i zakodujmy w UTF-8 Stwórz szablon strony i nazwij stronę np Gra. 2. Stwórz formularz do wpisania loginu, hasła i przycisku Zaloguj się. Oraz ustawimy miejsce przekierowania się do pliku zalogu.php <form action= z a l o g u j. php method= post > Login : <br /> <input type= t e x t name= l o g i n /> <br /> Hasło : <br /> <input type= password name= h a s l o /> <br /><br /> <input type= submit value= Zaloguj s i ę /> </form> 3. Tworzymy plik zaloguj.php. Wstawiamy kod php: $ l o g i n = $ POST [ login ] ; $haslo = $ POST [ haslo ] ; echo $ l o g i n. <br/> ; echo $haslo ; 4. Schemat działania: Sprawdzimy czy w bazie dane są prawdziwe. Aby to zrobić musimy wykonać następujące działanie:

2 a) W każdym pliku php, który ma być dostępny jedynie dla zalogowanych użytkowników (u nas pliku gra.php umieścimy na początku pliku ifa, który sprawdzi, czy użytkownik jest zalogowany. Jeżeli nie jest zalogowany, to przekierujemy do go index.php b) W pliku index.php, dodamy ifa, który sprawdzi, czy ktoś jest zalogowany. Jeśli jest, to wówczas przekierowujemy go do pliku gra.php, czyli do nowej strony głównej dostępnej jedynie dla zalogowanego gracza. c) W pliku skryptu logowania zaloguj.php (przetwarzającym podany login i hasło) umieścimy ifa, który sprawdzi, czy obie zmienne POST: login i hasło zostały ustawione. Jeśli nie istnieją takie zmienne, to przekierujemy użytkownika do formularza logowania index.php 5. Sprawdźmy, czy dane są odczytywane: Otwieramy stronę phpmyadmin. Tworzymy tabelę uzytkownicy a w niej kolumny: id, user, pass, email, drewno, kamien, zboze, dnipremium a następnie uzupełnijmy jeden wiersz. 6. Tworzymy plik connect.php, który posłuży połączeniu się z bazą. $host = mysql. cba. pl ; $db user = c i n i b a ; $db password = haslophp ; $db name = php nauka cba pl ; W pliku zaloguj.php na początku dopisujemy kod r e q u i r e o n c e connect. php ; W pliku zaloguj.php pobierzemy dane z bazy danych i sprawdzimy poprawność połączenia $ p o l a c z e n i e = @new mysqli ( $host, $db user, $db password, $db name ) ; i f ( $polaczenie >c o n n e c t e r r n o!=0) echo Error :. $ polaczenie >c o n n e c t e r r n o ; e l s e $ l o g i n = $ POST [ login ] ; $haslo = $ POST [ haslo ] ; echo Dobrze ; $polaczenie >c l o s e ( ) ; Zmień dane logowania do bazy i sprawdź poprawność wykonywanego kodu. 7. Sprawdź, czy dany użytkownik jest zapisany w bazie danych.

0.1. LOGOWANIE DO SERWISU 3 $ s q l= SELECT FROM uzytkownicy WHERE user = $login AND pass = $haslo ; i f ( $ r e z u l t a t=$ p olaczenie >query ( $ s q l ) ) $ i l u u s e r o w=$ r e z u l t a t >num rows ; $ w iersz=$ r e z u l t a t >f e t c h a s s o c ( ) ; $user=$ w i e r s z [ user ] ; $ r e z u l t a t >c l o s e ( ) ; e l s e 8. Tworzymy plik gra.php ze schematem hmtl. Wyświetlimy w nim profil użytkownika. echo <p>witaj. $user.! ; Zauważ, że nie odczytało nam loginu użytkownika, w innym pliku. W tym celu wykorzystamy sesje do zapamiętywania danych pomiędzy różnymi stronami. Php zapamiętuje zmienne tylko w obrębie jednego pliku. Zmienimy poprzedni kod następująco: $ i l u u s e r o w = $ r e z u l t a t >num rows ; $ w iersz = $ r e z u l t a t >f e t c h a s s o c ( ) ; $ SESSION [ id ] = $ w i e rsz [ id ] ; $ SESSION [ user ] = $ w i ersz [ user ] ; $ SESSION [ drewno ] = $wiersz [ drewno ] ; $ SESSION [ kamien ] = $ wiersz [ kamien ] ; $ SESSION [ zboze ] = $ wiersz [ zboze ] ; $ SESSION [ email ] = $ w i ersz [ email ] ; $ SESSION [ dnipremium ] = $ w i e rsz [ dnipremium ] ; $ r e z u l t a t >f r e e r e s u l t ( ) ; e l s e A na początku dokumentu index.php, zaloguj.php i gra.php dodajemy: s e s s i o n s t a r t ( ) ; Oraz zmieńmy wyświetlanie danych użytkownika w pliku gra.php echo <p>witaj. $ SESSION [ user ].!

4 [ <a href= logout. php >Wyloguj s i ę!</a> ]</p> ; echo <p><b>drewno</b>:. $ SESSION [ drewno ] ; echo <b>kamień</b>:. $ SESSION [ kamien ] ; echo <b>zboże</b>:. $ SESSION [ zboze ]. </p> ; echo <p><b>e mail </b>:. $ SESSION [ email ] ; echo <br/><b>dni premium</b>:. $ SESSION [ dnipremium ]. </p> ; Przetestuj kod. 9. Jeśli okazało się, że nie można się zalogować do dopiszemy do pliku zaloguj.php odpowiedni komunikat o złym loginie lub hasła a następnie przenieśmy użytkownika do formularza logowania. e l s e $ SESSION [ blad ] = <span style= c o l o r : red > Nieprawidłowy l o g i n lub hasło!</span> ; header ( Location : index. php ) ; który wyświetli się w pliku index.php pod formularzem. i f ( i s s e t ( $ SESSION [ blad ] ) ) echo $ SESSION [ blad ] ; W pliku zaloguj.php dopisujemy kod, który spowoduje usunięcie tekstu błędu, jeśli użytkownik pierwszy raz próbuje się zalogować. unset ( $ SESSION [ blad ] ) ; $ r e z u l t a t >f r e e r e s u l t ( ) ; 10. Wykonamy zapamiętanie loginu użytkownika pomiędzy stronami, mimo wejście po raz kolejny na stronę logowania. W tym celu stworzymy sesję zalogowany $ SESSION [ zalogowany ] = true ; $ w iersz = $ r e z u l t a t >f e t c h a s s o c ( ) ; $ SESSION [ id ] = $ w i e rsz [ id ] ;.... W pliku index.php dopisujemy s e s s i o n s t a r t ( ) ; i f ( ( i s s e t ( $ SESSION [ zalogowany ] ) ) && ( $ SESSION [ zalogowany ]== true ) )

0.1. LOGOWANIE DO SERWISU 5 e x i t ( ) ;