Laboratorium 1 – Wprowadzenie do PHP

Transkrypt

Laboratorium 1 – Wprowadzenie do PHP
Technologie programowania systemów internetowych
Laboratorium 1
Laboratorium 1 – Wprowadzenie do PHP
Ćwiczenie 1. Tworzenie i uruchamianie projektu PHP w Netbeans
Tworzenie projektu
•
Uruchom środowisko NetBeans.
•
Stwórz nowy projekt typu PHP Application (File->New Project, kategoria PHP,
PHP Application).
•
Wpisz nazwę projektu, np. Lab1. W polu Sources Folder wybierz katalog projektu – np.
katalog na dysku sieciowym lub pendrive.
•
Serwer WWW znajduje się na tej samej maszynie, co Netbeans, zatem projekt ma być
uruchamiany lokalnie – w 3 kroku kreatora (Run Configuration) wybierz Run As: Local
Web Site.
•
Pliki PHP muszą być kopiowane do katalogu serwera WWW. W tym celu zaznacz pole Copy
files from Sources Folder to another location, w polu Copy to Folder wpisz ścieżkę:
C:\xampp\htdocs\lab1
•
Upewnij się, że adres w polu Project URL odpowiada katalogowi, do którego będą
kopiowane pliki:
http://localhost/lab1/
Uruchamianie projektu
•
Stwórz nowy plik o nazwie index.php, umieść w nim przykładowy kod:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type"
content="text/html; charset=UTF-8">
<title>Lab 1</title>
</head>
<body>
<?php
echo '<h1>Witamy w PHP</h1>';
?>
</body>
</html>
•
Kliknij Run Project lub wciśnij F6.
UWAGA! Blok kodu PHP powinien rozpoczynać się znacznikiem <?php i kończyć znacznikiem ?>.
W poniższych przykładach znaczniki te pominięto, nie zapomnij w razie potrzeby ich dopisać, np.:
<?php
echo "<h1>Tu mówi PHP</h1>";
... reszta kodu PHP ...
?>
Strona 1 z 5
Technologie programowania systemów internetowych
Laboratorium 1
Ćwiczenie 2. Zmienne, wyrażenia, tablice
•
Stwórz kilka zmiennych, przypisz im wartości, wypisz wynik na ekranie:
$s = "<h1>Hello World!</h1>";
echo $s;
$x = 17;
$y = 23;
echo "x = $x, y = $y<br>";
$z = $x + $y;
echo "$x + $y = $z";
•
Tworzenie prostej tablicy:
$oceny = array(3, 3, 2, 3.5);
echo $oceny[0] . ', ';
echo $oceny[1] . ', ';
echo $oceny[2] . ', ';
echo $oceny[3] . '<br>';
$oceny[4] = 4;
$oceny[] = 3.5; // dopisz na końcu tabeli
•
Tworzenie tablicy asocjacyjnej:
$tabela[klucz] = wartość
$osoba['imie'] = 'Jan';
$osoba['nazwisko'] = 'Kowalski';
$but = array('kolor' => 'czerwony', 'rozmiar' => 37, 'cena' => 3.50);
•
Pętla po wszystkich elementach tablicy:
foreach($osoba as $s) {
echo $s . "<br>";
}
foreach($osoba as $klucz => $wartosc) {
echo "$klucz = $wartosc<br>";
}
Strona 2 z 5
Technologie programowania systemów internetowych
Laboratorium 1
Ćwiczenie 3. Obsługa formularzy
Umieszczenie formularza w kodzie HTML
•
Na stronie startowej (index.php lub index.html) umieść formularz:
Jak się nazywasz?
<form action="akcja.php" method="get" >
<input type="text" name="imie">
<input type="submit" value="Wyślij">
</form>
Odebranie danych w skrypcie PHP
•
Stwórz nowy plik akcja.php. Umieść w nim kod obsługi formularza:
$imie = $_GET['imie'];
echo "Witaj, $imie";
Zmiana metody HTTP na POST
•
W formularzu zmień metodę z GET na POST (znacznik form, atrybut method).
•
W skrypcie PHP odczytaj dane z tablicy $_POST zamiast $_GET.
•
Sprawdź działanie skryptu. Porównaj adresy URL w obu przypadkach.
Generowanie i obsługa formularza w jednym pliku
•
Przerób skrypt z poprzedniego ćwiczenia – całość umieść w jednym pliku, index.php.
•
Formularz musi teraz wskazywać na plik index.php jako skrypt odbierający dane. Zmień
atrybut action w znaczniku form. (<form action="index.php" …)
•
W skrypcie index.php sprawdź, czy zostały przesłane dane z formularza. Jeśli nie –
wyświetl formularz. Jeśli tak – wyświetl powitanie.
if(!isset($_POST['imie'])) {
// wyświetl formularz...
} else {
// obsłuż formularz...
}
Strona 3 z 5
Technologie programowania systemów internetowych
Laboratorium 1
Ćwiczenie 4. Filtrowanie danych z formularza
•
Uruchom przygotowaną do tej pory stronę. W polu formularza spróbuj wpisać:
<font color='red' size='22'>Kleofas
•
Co się stało? Jak wygląda źródło strony wysłanej do przeglądarki?
•
Teraz spróbuj wpisać w formularzu:
<script> alert('Jestem zlym hackerem i zaraz cie zjem!'); </script>
•
Aby zapobiec takim niespodziankom, ZAWSZE należy filtrować dane wpisane przez
użytkownika w formularzu:
$imie = htmlspecialchars($_POST['imie']);
•
Popraw skrypt i sprawdź jego działanie – ponownie wpisz w formularzu kod ze znacznikiem
font. Sprawdź, jak teraz wygląda źródło strony.
Zadanie 1
Napisz prosty kalkulator.
Strona 4 z 5
Technologie programowania systemów internetowych
Laboratorium 1
Zadanie 2
Napisz aplikację, która poprosi o podanie:
•
liczby wierszy i kolumn,
•
zakresu (min, max),
a następnie wyświetli stronę z tabelą wypełnioną liczbami losowymi z podanego zakresu.
Zabezpiecz aplikację przed podaniem niepoprawnych danych.
Potrzebne funkcje znajdź w dokumentacji na stronie http://www.php.net/manual/en/
Strona 5 z 5