Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Web-программирование и базы данных. Учебный практикум

.pdf
Скачиваний:
0
Добавлен:
12.08.2026
Размер:
967 Кб
Скачать

Упражнения по PHP при работе с файлами на сервере

Упражнение 3.1. Открытие или создание файлов

<html>

<head>

<title></title>

</head>

<body>

РАБОТА С ФАЙЛАМИ <br />

СОЗДАНИЕ И ОТКРЫТИЕ ФАЙЛОВ <br /> <br />

В примере выполняется открытие или создание файла proba1.txt на сервере, <br />

(если файла нет, то он создается)<br />

параметр«a+»означают,чтофайлпредназначендлячтенияизаписи<br />

параметр «t» означают, что файл — текстовой <br /> <br />

ЗАДАНИЕ: <br />

Проверьте работу программы<br />

Измените имя файла proba1 на вашу фамилию,<br /> записанную латинскими буквами<br />

Проверьте работу программы<br /> <br />

<?php

$namf=»proba1.txt»; //переменная для имени файла $fi=fopen($namf,»a+t»); //создание или открытие файла

if (!$fi) exit(«ошибка создания файла или открытия файла»);//проверка на ошибку

echo «создание или открытие файла $namf прошло успешно»; fclose($fi); //закрытие файла

?>

</body>

</html>

В этом упражнении показано, как создавать или открывать созданный ранее файл на сервере с помощью функции fopen с параметрами. Обычно при таких операциях проводится проверка на ошибку. Если ошибка, то сообщается о ней, и происходит выход из программы.

81

Упражнение 3.2. Создание счетчика посещений сайта с использованием файла

<html>

 

 

<head>

 

 

<title></title>

</head>

 

 

<body>

 

 

СЧЕТЧИК ПОСЕЩЕНИЙ <br />

<?php

 

 

$fi=fopen(“counter.txt”,”a+t”);

if (!fi) exit(«ошибка открытия или создания файла»);

$z=fgets($fi);

//получаем из файла значение счетчика

$z=$z+1;

//увеличиваем количество посещений

ftruncate($fi,0); //очищаем файл

fputs($fi,$z);

//записываем в файл новое значение счетчика

fclose($fi);

//закрываем файл

echo $z;

 

 

?>

 

 

</body>

</html>

Вэтом упражнении показано, как при помощи работы

сфайлом на сервере реализовывается счетчик посещения сайта.

82

Упражнение 3.3. Программа счетчика посещений, выделенная в отдельный файл

<?php

//Это программа, выделенная в отдельный файл //Но она тоже работает. Попробуйте $fi=fopen(«counter.txt»,»a+t»);

if (!$fi) exit(«ошибка открытия или создания файла»);

//flock($fi,2); //устанавливаем блокировку на файл для других пользователей

$z=fgets($fi); //получаем из файла значение счетчика $z=$z+1;

ftruncate($fi,0); //очищаем файл

fputs($fi,$z); //записываем в файл новое значение счетчика flock($fi,3); //снимаем блокировку на файл для других пользователей fclose($fi);

echo $z; ?>

Упражнение показывает, что программа на PHP может работать, даже если она выделена в отдельный файл. Эта программа является счетчиком посещений сайта.

Упражнение 3.4. Генерация гиперссылки на php-файл

<html>

<head> <title>гиперссылки</title> </head>

<body>

ЗАДАНИЕ:

Сделайте гиперссылку на первое упражнение по образцу <br />

Обратите внимание, что внутри двойных кавычек <br />

в тегах необходимо использовать одиночные кавычки!!! <br />

Ссылки на php-файлы работают только в среде сервера!!! <br /> <br />

<?php

echo «<a href=’001_file.php’>перейти на первое упражнение</a> « ; ?>

</body>

</html>

Это упражнение показывает, что можно генерировать гиперссылки на PHP-файлы.

83

Упражнение 3.5. Окончательный вариант счетчика посещений сайта с помощью файла

<html>

<head>

<title></title>

</head>

<body>

Окончательный вариант страницы со счетчиком<br /> (счетчик находится в другом файле и <br /> выполняется для каждого посетителя 1 раз) <br /> <br />

<?php

echo(«сайт посетило: «); require_once(“003.php”); echo(“ чел. «);

?>

</body>

</html>

Это упражнение показывает реализацию счетчика посещений с использованием выделенного отдельно PHP-файла. Должно быть указано имя файла, содержащее упражнение 3.3.

Упражнение 3.6. Итоговая работа по созданию счетчика посещений с дополнительными возможностями и табличным дизайном

<html>

<head>

<title></title>

</head>

<body>

ИТОГОВАЯ КОНТРОЛЬНАЯ РАБОТА <br /> Создайте страницу со счетчиком посещений <br /> Используйте табличный дизайн <br />

Счетчик выводите в ячейку таблицы<br> Выделяйте категории посетителей (5-й, 10-й,...)<br />

Для них выводите поздравление и специальное изображение <br /> <br />

<?php

?>

</body>

</html>

В этом упражнении проверяется не только умение создавать счетчик посещений, но и проверяется усвоение предыдущего учебного материала.

84

Упражнение 3.7. Передача информации на сервер с помощью оператора get

<form method=GET>

<input type=text name=name value=”<?php echo $_GET[‘name’]; ?>”> <input type=submit name=submit value=”send”>

</form>

<?php

//Вывод GET-параметра

//

//

//echo $_GET[‘name’]; ?>

Проверьте работу файла этого упражнения.

 

Упражнение 3.8. Передача

информации на сервер

с помощью оператора post

 

<!-- Передача данных методом POST

-->

<!-- Посмотрите на форму передачи

-->

<form method=POST>

 

 

<input type=text name=name value=”<?php echo $_POST[‘name’]; ?>”>

 

<input type=submit name=submit value=”send”>

</form>

 

<?php

 

// Выводим значение POST-параметра name

echo $_POST[‘name’];

 

?>

 

 

Проверьте работу файла этого упражнения. Этот метод по-

требуется нам позже.

 

 

Упражнение 3.9. Передача пароля на сервер

<!-- Передача данных методом POST

-->

<!-- Посмотрите на форму передачи

-->

<form method=POST>

 

 

Пароль: <input type=password name=”pass”>

 

<input type=submit name=submit value=”send”>

</form>

 

<?php

 

// Выводим значение POST-параметра name

$pass= $_POST[‘pass’];

 

if (isset($pass)) {

 

}

echo “Пароль: $pass<br>”;

 

 

 

?>

 

Проверьте работу файла этого упражнения.

85

Упражнение 3.10. Регистрация пользователя на сайте с использованием файлов

<html>

<head>

<title></title>

</head>

<body>

ЗАДАНИЕ:<br>

РЕГИСТРАЦИЯ ПОЛЬЗОВАТЕЛЯ НА САЙТЕ<br> <br>

Обеспечьте наряду с паролем ввод логина <br> Пароль запишите в файл под именем логина<br> Прочитайте пароль из файла и выведите его<br> с помощью echo <br>

ПРИЗАПУСКЕПРОГРАММЫЗАПОМНИТЕЛОГИНИПАРОЛЬ,<br> КОТОРЫЕ ВЫ ВВЕЛИ, ДЛЯ СЛЕДУЩЕГО УПРАЖНЕНИЯ С ЭТИМ ФАЙЛОМ<br>

Логин и пароль вводите латинскими буквами <br> <form method=POST>

Пароль: <input type=password name=”pass”> <input type=submit name=submit value=”send”> </form>

<?php

// Выводим значение POST-параметра name $pass= $_POST[‘pass’];

if (isset($pass)) {

}

echo “Пароль: $pass<br>”;

?>

</body>

</html>

Это упражнение показывает регистрацию пользователя на сайте с использованием файлов. Проверьте работу файла этого упражнения. При запуске этой программы необходимо запомнить введенные вами логин и пароль для следующего упражнения с этим файлом.

86

Упражнение 3.11. Проверка пароля пользователя с использованием файлов

<html>

<head>

<title></title>

</head>

<body>

ЗАДАНИЕ:<br>

ПРОВЕРКА ПАРОЛЯ ПОЛЬЗОВАТЕЛЯ<br> <br>

Добавьте наряду с паролем ввод логина <br> Обеспечьте проверку введенного пароля <br>

с паролем, записанным в соответствующий файл <br> (создан в предыдущем упражнении!!!) <br> Обеспечьте вывод результата проверки <br>

с помощью echo <br> <form method=POST>

Пароль: <input type=password name=”pass”> <input type=submit name=submit value=”send”> </form>

<?php

// Выводим значение POST-параметра name $pass= $_POST[‘pass’];

if (isset($pass)) {

}

echo “Пароль: $pass<br>”;

?>

</body>

</html>

Это упражнение показывает проверку пароля пользователя на сайте с использованием файлов. Пароль должен быть записанным в файл в предыдущем упражнении.

87

Упражнение 3.12. Генерация нескольких гиперссылок для перехода на другие php-файлы

<html>

<head> <title>гиперссылки</title> </head>

<body>

ЗАДАНИЕ:

Используйте несколько других файлов php из текущей папки <br /> и сделайте на них гиперссылки по образцу <br />

Обратите внимание, что внутри двойных кавычек <br />

в тегах необходимо использовать одиночные кавычки!!! <br /> <br />

<?php

echo «<a href=’001_file.php’>перейти на первое упражнение</a> « ; echo «<a href=’002_file.php’>перейти на второе упражнение</a> « ; echo «<a href=’003_file.php’>перейти на третье упражнение</a> « ; ?>

</body>

</html>

Это упражнение показывает проверку пароля пользователя на сайте с использованием файлов. Пароль должен быть записанным в файл в предыдущем упражнении.

88

Основные сведения о базе данных MySQL и языке запросов SQL

Мы будем иметь дело с реляционной базой данных MySQL и языком SQL, с помощью которого можно извлекать интересующую нас информацию.

Реляционная база данных обычно состоит из нескольких связанных между собой таблиц.

В частном случае реляционная база данных состоит из одной таблицы, как, например:

Фамилия

Пол

Оценка

Иванов

М

5

Петрова

Ж

3

Сидоров

М

4

Яблоков

М

4

Акулова

Ж

3

Каждая колонка обязательно содержит однородную информацию (например, только числа или только текст).

Здесь [Фамилия], [Пол] и [Оценка] — названия полей таблицы. Ниже пять строчек с конкретной информацией — записи таблицы

Язык SQL

SQL (Structured Query Language — «язык структурирован-

ных запросов») — язык, применяемый для создания, модификации и получения данных по запросам в реляционных базах данных.

Примеры запросов на языке SQL

Пример запроса на языке SQL

Пояснения

 

 

Select [Фамилия],[Оценка] from

Выберите столбцы Фамилия и

Таблица

Оценка

Select * from Таблица;

Просмотр всех столбцов таблицы

Select [Фамилия],[Оценка],[Пол]

Переставьте колонки Пол и

from Таблица

Оценка

89

Select * from Таблица where

Выберите записи о женщинах

Пол=”Ж»

 

Select * from Таблица where

Выберите записи с оценкой боль-

Оценка>3;

ше 3

Select * from Таблица where

Выберите записи с оценкой мень-

Оценка<4;

ше 4

Select * from Таблица where

Выберите записи с оценкой боль-

Оценка>=4;

ше или равной 4

Select * from Таблица where

Выберите записи с оценкой мень-

Оценка<=4;

ше или равно 4

Select * from Таблица where Фа-

Выберите записи с фамилией, на-

милия LIKE ‘A%’;

чинающейся на букву «А»

Select * from Таблица where Фа-

Выберите записи с фамилией,

милия LIKE ‘%A’;

оканчивающейся на букву «А»

Select * from Таблица where Фа-

Выберите записи с фамилией, со-

милия LIKE ‘%ло%’;

держащей буквосочетание «ло»

Select * from Таблица where Фа-

Выберите людей с фамилией, у

которой на втором месте буква

милия LIKE ‘_к%’;

«к»

 

Select * from Таблица where Фа-

Выберите записи с фамилией из

семи букв, оканчивающейся на

милия LIKE ‘_______а’;

букву «А»

 

Select * from Таблица where

Выберите записи о мужчинах с

(Пол=”М”)AND (Оценка>3);

оценкой больше 3

Select * from Таблица where

Выберите записи с оценками 3

(Оценка=3) OR (Оценка=4);

или 4

Select * from Таблица where

Выберите записи с оценкой, не

(Оценка<>3);

равной 3

 

 

Select * from Таблица where

Выберите записи о мужчинах с

(Пол=»М»)AND ( (Оценка=5) OR

оценкой 3 или 5

(Оценка=3));

 

Select * from Таблица order by

Отсортируйте по возрастанию

Оценка;

оценки

Select * from Таблица order by

Отсортируйте по убыванию

Оценка desc

оценки

Select * from Таблица order by

Отсортируйте записи по фамили-

Фамилия

ям в алфавитной порядке

select * from Таблица order by

Отсортируйте по убыванию оцен-

Оценка desc, Фамилия;

ки, а внутри оценки по алфавиту

Select distinct [Должность] from

Выберите неповторяющийся

Таблица order by [Должность];

список должностей

90