
- •Лабораторна робота № 1 Тема: Об’єкти Ajax та сценарії взаємодії з сервером Мета: Оволодіти технологією Ajax та методами створення сценаріїв взаємодії з сервером.
- •Об’єкти Ajax та сценарії взаємодії з сервером
- •Обмін форматизованими даними
- •Використання jQuery для застосування Ajax
- •Завдання до лабораторної роботи
- •Контрольні запитання
- •Лабораторна робота № 2 Тема: рнр як засіб написання сценаріїв. Мета: Оволодіти структурою та основними засобами рнр для написання сценаріїв.
- •Побудова простих рнр програм
- •Передача параметрів між html- та php- сторінками
- •Програмні засоби аутентифікації
- •Завдання до лабораторної роботи
- •Контрольні запитання
- •Лабораторна робота № 3 Тема: Основні функції доступу до бд Мета: Оволодіти основними функціями доступу до бд у php-програмах.
- •Функції доступу рнр до баз даних
- •Завдання до лабораторної роботи
- •Контрольні запитання
- •Список літератури
- •Створення динамічних веб-сторінок на сервері методичні вказівки
Програмні засоби аутентифікації
Розглянемо приклад PHP програми для авторизації користувача ресурсу. Традиційне вікно для заповнення імені та паролю користувача має вигляд (рис.2.1.)
Рис.2.1 Форма для заповнення даних користувача
Основною частиною HTML коду даної сторнки є тег форми з відповідними етикетками та елементами керування (введення даних і кнопка надсилання) :
<form action="" method="post">
<label>UserName :</label>
<input type="text" name="username"/><br />
<label>Password :</label>
<input type="password" name="password"/><br/>
<input type="submit" value=" Submit "/><br />.
</form>
Програма авторизації на сервері складається з двох частин по два файли (рис.2.2) :
Welcome.php
Lock.php
Login.php
Config.php
Config.php
Рис.2.2 Форма для заповнення даних користувача
Скрипт Login.php читання введених текстових даних, пошуку аналогічних даних в базі даних (таблиці) та видачі повідомлення про відсутність реєстрації або про допуск до ресурсу. Скрипт Config.php призначений для авторизації користувача бази даних та під єднання до неї.
Друга частина – це скрипт видачі повідомлення та верифікації користувача.
Database
MySQL admin table columns id, username, passcode.
CREATE TABLE admin(id INT PRIMARY KEY AUTO_INCREMENT,username VARCHAR(30) UNIQUE,passcode VARCHAR(30));
Config.php
Database configuration file.
<?php
$mysql_hostname = "hostname";
$mysql_user = "username";
$mysql_password = "password";
$mysql_database = "database";
$bd = mysql_connect($mysql_hostname, $mysql_user, $mysql_password)
or die("Opps some thing went wrong");
mysql_select_db($mysql_database, $bd) or die("Opps some thing went wrong");
?>
Login.php
Contains PHP and HTML code.
>?php
include("config.php");
session_start();
if($_SERVER["REQUEST_METHOD"] == "POST")
{
// ім'я користувача та пароль, присланий з форми
$myusername=addslashes($_POST['username']);
$mypassword=addslashes($_POST['password']);
$sql="SELECT id FROM admin WHERE username='$myusername' and passcode='$mypassword'";
$result=mysql_query($sql);
$row=mysql_fetch_array($result);
$active=$row['active'];
$count=mysql_num_rows($result);
// Якщо результат відповідає $myusername and $mypassword, рядок таблиці має бути 1 рядок
if($count==1)
{
session_register("myusername");
$_SESSION['login_user']=$myusername;
header("location: welcome.php");
}
else
{
$error="Your Login Name or Password is invalid";}
}
?>
lock.php
<?php
include('config.php');
session_start();
$user_check=$_SESSION['login_user'];
$ses_sql=mysql_query("select username from admin where username='$user_check' ");
$row=mysql_fetch_array($ses_sql);
$login_session=$row['username'];
if(!isset($login_session))
{
header("Location: login.php");
}
?>
welcome.php
<?php
include('lock.php');
?>
<body>
<h1>Welcome <?php echo $login_session; ?></h1>
</body>
logout.php
SignOut Destroy the session value.
<?php
session_start();
if(session_destroy())
{header("Location: login.php");
}
?>