Міністерство освіти і науки України
Національний університет „Львівська політехніка”
Кафедра «Безпеки інформації»
Звіт
Про виконання лабораторної роботи №3
З дисципліни: «Бази даних та знань»
Варіант-1 (Товариство філателістів)
Виконав: ст. гр. УІ-31
Перевірив:
Львів-2011
Варіант № 1
Товариство філателістів
Тексти HTML документів для формування форм:
index.html <html> <head> <title>Menu</title> </head> <body> <b> <а href="../php/form1.html"> 1.Добавити запис в базу даних </a><br> <а href="../php/form2.html"> 2. Знайти запис по назві марки </a><br> <а href="../php/form3.html"> 3.Видалити запис </a><br> <а href="../php/form4.html"> 4.Відредагувати запис </a> </b> <h5><p>Число відвідувань: <?PHP $filename = "counter.dat"; $fp = fopen($filename,"r"); if ($fp) { $counter=fgets($fp,10); fclose($fp); } else { $counter=0; } $counter++; print $counter; $fp = fopen($filename,"w"); if ($fp) { $ii=fputs($fp,$counter); fclose($fp); } ?> </h5> </body> </html>
Додавання запису в базу даних:
form1.html <html> <head> <title>form1</title> <body> <form method=post action="form1.php"> <br><b>Введіть назву марки:</b> <br><input name="name" value="" size=10> <br><br><b>Введіть висоту марки:</b> <br><input name="height" value="" size=10>
<br><br><b>Введіть ширину марки:</b> <br><input name="width" value="" size=10><br><br><b>Введіть форму марки:
<br><input name="form" value="" size=10>
<br><b>Введіть ціну марки:</b> <br><input name="prise" value="" size=10> <br><br><b>Введіть країну марки:</b> <br><input name="country" value="" size=10>
<br><br><b>Введіть рік марки:</b> <br><input name="year" value="" size=10><br><br><b>Введіть id власника марки:
<br><input name="id_club_person" value="" size=10>
<br><br><b>Введіть П.І.Б. власника марки:</b> <br><input name="FSname" value="" size=10><br><br><b>Введіть телефон власника марки:
<br><input name="telephone" value="" size=10>
<br><b>Введіть статус власника марки:</b> <br><input name="rank" value="" size=10> <br><br><b>Введіть рік вступу власника:</b> <br><input name="year_enter" value="" size=10>
<br><br><b>Введіть назва клубу-партнера:</b> <br><input name="name_club_partner" value="" size=10>
<br><br><b>Введіть адреса клубу-партнера:</b> <br><input name="adress_club_partner" value="" size=10><br><br><b>Введіть П.І.Б. голови клубу-партнера:
<br><input name="FSname_gover" value="" size=10><br><br><input type="submit" value="Зареєструвати"> </form> </body> </html>
Знаходження запису по id марки:
form2.html <html> <head> <title>Виборка даних</title> <body> <form action="form2.php" method="post"> <b>Введіть id марки <b> <input type="text" name="name" size=30> <input type="submit" value="Ввести!"> </form> </body> </html>
Видалення запису:
form3.html <html> <head> <title>Виборка даних</title> <body> <form action="form3.php" method="post"> <b>Введіть id марки для видалення:<b> <input type="text" name="name" size=30> <input type="submit" value="Ввести!"> </form> </body> </html>
Редагування запису:
form4.html <html> <head> <title>Коректування даних</title> <body> <form action="form4.php" method="post"> <b>Введіть id марки, дані для якої необхідно змінити:<b> <br><input type="text" name="name" size=30> <input type="submit" value="Ввести!"> </form> </body> </html>
Тексти програм на мові PHP:
form1.php <? /* Визначаємо значення змінним */ $hostname="localhost"; $username="dima"; $password="admin"; /* Ім'я бази даних */ $dbName="dimadb"; /* Таблиця MySQL */ $usertable="dimatab1"; /* Створити з'єднання */ MYSQL_CONNECT($hostname,$username,$password) OR DIE("Не можу під'єднатися"); /* Вибір БД */ MYSQL_SELECT_DB($dbName) or die("Не можу вибрати БД"); /* Введення інформації в БД */ $query="INSERT INTO $usertable VALUES ('$name','$height','$width','$form','$prise','$country','$year','$id_club_person','$FSname','$telephone','$rank','$year_enter','$name_club_partner','$adress_club_partner','$FSname_gover')"; $result=MYSQL_QUERY($query); /* Закрити з'єднання */ MYSQL_CLOSE(); print "Запис введений в БД! <br>"; print "<a href='../php/'>Назад в меню</a>"; ?>
form2.php <?php $hostname="localhost"; $username="dima"; $password="admin"; $dbName="dimadb"; $usertable="dimatab1"; mysql_connect($hostname,$username,$password) or die("Не можу під'єднатися "); mysql_select_db("$dbName") or die("Не можу вибрати БД"); /* Вибрати марки, рік випуску яких $year_search */ $query="select * from $usertable where year like '$year%'"; $result=mysql_query($query); /* Скільки знайшлося таких марок? */ $number=mysql_numrows($result); /* Роздрук вибраних марок */ $i=0; if ($number == 0) { { print "Немає даних про $year в БД <br>"; } elseif ($number > 0) { while ($i < $number) { /* Привласнення змінним значень полів name, height, width, form, prise, country, year, id_club_person, FSname, telephone, rank, year_enter, name_club_partner, adress_club_partner, FSname_gover для i-го рядка */ $name=mysql_result($result,$i,"name"); $height=mysql_result#@:; $width=mysql_result#@;; $form=mysql_result#@;;
$prise=mysql_result#@:;
$country=mysql_result#@:;
$year=mysql_result#@:;
$id_club_person=mysql_result#@:;
$FSname=mysql_result#@:;
$telephone=mysql_result#@:;
$rank=mysql_result#@:;
$year_enter=mysql_result#@:;
$name_club_partner=mysql_result#@:;
$adress_club_partner=mysql_result#@:;
$FSname_gover=mysql_result#@
?>
form3.php <?php $hostname="localhost"; $username="dima"; $password="admin"; $dbName="dimadb"; $usertable="dimatab1"; mysql_connect($hostname,$username,$password) or die("Не можу під'єднатися "); mysql_select_db("$dbName") or die("Не можу вибрати БД"); /* Видалення запису для поля name */ $query="delete from $usertable where name='$name'"; $result=mysql_query($query); print "Запис видалений <br>"; print "<a href='../php/'>Назад в меню</a>"; ?>
form4.php <?php $hostname="localhost"; $username="dima"; $password="admin"; $dbName="dimadb"; $usertable="dimatab1"; mysql_connect($hostname,$username,$password) or die("Не можу під'єднатися "); mysql_select_db("$dbName") or die("Не можу вибрати БД"); /* Вибір запису по полю name */ $query="select * from $usertable where name='$name'"; $result=mysql_query($query); /* Визначення існування вибраного запису */ $number=mysql_numrows($result); if ($number==0) { print "Немає такого запису!<br>"; print "<a href='../php/'>Назад в меню</a>";} else { /* Якщо запис вибраний з бази даних, вивести всі її поля у форму для редагування і видалити її */ $name=mysql_result($result,0,"name"); $height=mysql_result($result,0,"height");
$width=mysql_result($result,0,"width");
$form=mysql_result($result,0,"form");
$prise =mysql_result($result,0,"prise");
$country=mysql_result($result,0,"country");
$year=mysql_result($result,0,"year");
$id_club_person=mysql_result($result,0,"id_club_person");
$FSname=mysql_result($result,0,"FSname");
$telephone=mysql_result($result,0,"telephone");
$rank=mysql_result($result,0,"rank");
$year_enter=mysql_result($result,0,"year_enter");
$name_club_partner=mysql_result($result,0,"name_club_partner");
$adress_club_partner=mysql_result($result,0,"adress_club_partner");
$FSname_gover=mysql_result($result,0,"FSname_gover"); /* Видалення запису */ $query="delete from $usertable where name='$name'"; $result=mysql_query#@:; /* Створення форми для редагування */ print "<form method=post action='form5.php'>"; print "<br><b>Введіть назву марки:</b>"; print "<br><input name='name' value='$name' size=30>"; print "<br><br><b>Введіть висоту марки:</b>"; print "<br><input name='height' value='$height' size=30>";
print "<br><br><b>Введіть ширину марки:</b>"; print "<br><input name='width' value='$width' size=30>";
print "<br><br><b> Введіть форму марки:</b>"; print "<br><input name='form' value='$form' size=30>";
print "<br><br><b>Введіть ціну марки:</b>"; print "<br><input name='prise' value='$prise' size=30>";
print "<br><br><b>Введіть країну марки:</b>"; print "<br><input name='country' value='$country' size=30>";
print "<br><br><b>Введіть рік марки:</b>"; print "<br><input name='year' value='$year' size=30>";
print "<br><br><b>Введіть id власника марки:</b>"; print "<br><input name='id_club_person' value='$id_club_person' size=30>";
print "<br><br><b>Введіть П.І.Б. власника марки:</b>"; print "<br><input name='FSname' value='$FSnamesize=30>";
print "<br><br><b>Введіть телефон власника марки:</b>"; print "<br><input name='telephone' value='$telephone' size=30>";
print "<br><br><b>Введіть статус власника марки:</b>"; print "<br><input name='rank' value='$rank' size=30>";
print "<br><br><b>Введіть рік вступу власника:</b>"; print "<br><input name='year_enter' value='$year_enter' size=30>";
print "<br><br><b>Введіть назва клубу-партнера:</b>"; print "<br><input name='name_club_partner' value='$name_club_partner' size=30>";
print "<br><br><b>Введіть адреса клубу-партнера:</b>"; print "<br><input name='adress_club_partner' value='$adress_club_partner' size=30>";
print "<br><br><b>Введіть П.І.Б. голови клубу-партнера:</b>"; print "<br><input name='FSname_govervalue='$FSname_goversize=30>";
print "<br><br><input type='submit' value='Зареєструвати'>"; print "</form>"; } ?>
form5.php <? /* Визначаємо значення змінним */ $hostname="localhost"; $username="dima"; $password="admin";
/* Ім'я бази даних */$dbName="dimadb";
/* Таблиця MySQL */$usertable="dimatab1";
/* Створити з'єднання */mysql_connect($hostname,$username,$password) or die("Не можу під'єднатися ");
/* Вибір БД */mysql_select_db("$dbName") or die("Не можу вибрати БД"); /* Введення інформації в БД */ $query="INSERT INTO $usertable VALUES ('$name','$height','$width','$form','$prise','$country','$year','$id_club_person','$FSname','$telephone','$rank','$year_enter','$name_club_partner','$adress_club_partner','$FSname_gover')"; $result=MYSQL_QUERY($query); /* Закрити з'єднання */ MYSQL_CLOSE(); print "Запис введений в БД! <br>"; print "<a href='../php/'>Повернутись до меню</a>"; ?>
Висновок: на цій лабораторній роботі я навчився створювати пакет програм простої бази даних її доповнювати, здійснювати пошуку запису, а також видаляти запис.