Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ВКР Сушкова О.С..doc
Скачиваний:
8
Добавлен:
01.09.2019
Размер:
3.55 Mб
Скачать
    1. Особенности реализации некоторых функций

Создание онтологий осуществляется с помощью рабочего поля для рисования в программе Adobe Flash Professional CS5 (Листинг 2.1.), а для просмотра используется Adobe Flash Player 10. Создание элементов графа включает в себя клонирование этих самых элементов, создание процесса клонирование описано на листинге ниже.

Листинг 2.1. Создание онтологий

onClipEvent (load)

{

if (_root.i == undefined)

{

_root.i=0;

this.can_duplicate = true;

}

}

on (press) {

if ((this.can_duplicate == true)&( _root.i < 3))

{

_root.i++;

duplicateMovieClip(this, "krug_mc"+_root.i, _root.i);

//this.i = _root.i;

_parent["krug_mc"+_root.i].txt_n.text = _root.i;

_parent["krug_mc"+_root.i].can_duplicate = false;

_parent["krug_mc"+_root.i].i = _root.i;

_parent["krug_mc"+_root.i].startDrag(true);

_parent["krug_mc"+_root.i].onPress = this.onPress;

_parent["krug_mc"+_root.i].onRelease = this.onRelease;

} else {

if (this.can_duplicate == false)

{

this.startDrag();

}

}

}

on (release) {

this.stopDrag();

}

on (releaseOutside)

{

this.stopDrag();

}

Загрузка изображений с онтологиями описана на листинге ниже (Листинг 2.2.). Пользователю предлагается сначала выбрать изображение на своем компьютере, а затем написать название онтологии и нажать кнопку загрузки. Изображением записывается на сервер в базу данных и также в отдельную папку на компьютере под названием «image_uploaded» [2]. Изображения можно загружать в любом графическом формате, главное чтобы имя изображения не содержала специальных символов. Изображения можно загружать с русскими названиями, система сама переименует имя в английское.

Листинг 2.2. Загрузка изображений

<?php

session_start();

include("header.html");

//phpinfo();

define("URL_SITE", "http://ontologii.ru/", true);

function f_menu1() {

echo "<!-- Панель навигации Начало -->\n";

echo "<TABLE align=\"center\"width=760height=\"21\"";

echo "border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\n";

echo "<TR class=\"menu-table\"><TD>\n";

echo "<A href=\"" . URL_SITE . "\" class=\"menu\"> Возврат на главную страницу</A>\n";

echo "</TD><TR>\n";

echo "</TABLE>\n";

echo "<!-- Панель навигации Конец -->\n\n";

}

f_menu1();

// Устанавливаем соединение с базой данных

require_once("connect.php");

// Извлекаем файл изображения из базы данных

echo '<h2>Здесь представлена более полная информация об уже созданных онтологиях</h2>';

if (isset($_GET['id']))

{

$sql2="SELECT imya_im, content from images WHERE id_image=".$_GET['id'];

$data2=mysql_query($sql2);

while($line2=mysql_fetch_array($data2))

{

echo $line2[0]." <br> ".$line2[1]." <br> <a href=show_screen.php>Вернуться к скриншотам</a>";

}

}

else if (!isset($_POST['load']))

{

$sql="SELECT id_image, imya_im from images";

$dataim=mysql_query($sql);

echo "<table>";

$i=1;

while ($lineim=mysql_fetch_array($dataim))

{

echo "<tr><td>".$i."</td><td><a href=show_screen.php?id=".$lineim[0].">".$lineim[1]."</a></td></tr>";

$i++;

}

echo "</table>";

echo "<form enctype=\"multipart/form-data\" method=POST action=\"\" >";

echo "<table> <tr><td>Добавить скриншот:</td> <td><input type='file' name='filename'></td></tr>

<tr><td>Название скриншота: </td> <td><input type='text' name='image_name'></td></tr>

</table>

<input type='submit' value='Загрузить' name='load'>

</form>";

}

else

{

if($_FILES["filename"]["size"] > 1024*3*1024)

{

echo ("<br>Размер файла превышает три мегабайта<br>");

exit;

}

// Проверяем загружен ли файл

if(is_uploaded_file($_FILES["filename"]["tmp_name"]))

{

// Если файл загружен успешно, перемещаем его

// из временной директории в конечную

move_uploaded_file($_FILES["filename"]["tmp_name"], "Z:/home/Ontologii.ru/www/image_uploaded/".$_FILES["filename"]["name"]);

$name=$_FILES["filename"]["name"];

$namefull="<img src=\"/image_uploaded/".$name."\">";

$imya_im=htmlspecialchars($_POST['image_name']);

if (!preg_match("/^[a-zA-Zа-яА-Я0-9\s]{3,50}$/",$imya_im))

{

echo "<center><font color=\"red\">Неверное имя скриншота</font></center><br>";

include("footer.html");

exit;

}

$sql="INSERT INTO images(imya_im, content) VALUES ('".$imya_im."', '".$namefull."')";

$sqlq=mysql_query($sql);

echo("<br>Файл загружен успешно!<br>");

}

else

{

echo("<br>Ошибка загрузки файла<br>");

}

}

include("footer.html");

?>

Реализация функции обратной связь и гостевая книга. В системе для связи с пользователями организованы разделы обратная связь и гостевая книга. Гостевая книга организована по принципу форума [1], то есть пользователь пишет свое имя и текст сообщение и отправляет его. Через «Обратную связь» же пользователь отправляет сообщение непосредственно самому разработчику систему по средством электронной почты [13].

Работа гостевой книги и обратной связи представлена ниже (Листинг 2.3 и 2.4):

Листинг 2.3. Гостевая книга

<?

session_start();

include("header.html");

?>

<!-- Создаем форму, состоящую из поля ввода, кнопки и textarea-->

<form name="my_form" action="add_message.php" method="POST">

Ваше имя<font size=-2>(не более 50 символов)</font>:<br>

<input type="text" name="name_of_guest" value="" title="Поле для ввода имени"><br>

Сообщение<font size=-2>(не более 1000 символов)</font>:

<br><textarea name="message_of_guest" cols=40 rows=5></textarea><br>

<input type="submit" value="OK" name="okbutton" title="Нажмите для отправки вопроса!"><br>

</form>

<?php

//Открыть файл gost.txt в режиме чтения

$f=fopen("gost.txt","r") or die("Не могу открыть файл!");

//начало цикла, пока не конец файла сообщений

while (!feof($f))

{

$first_line=fgets($f); //получаем строку "--------------"

$ip_=fgets($f); //получаем IP-адрес

$data=fgets($f); //читаем дату размещения

echo "<small>Дата: </small>".$data."<br>";

$data=fgets($f); //читаем имя пользователя сообщения

echo "<small>Имя: </small>".$data."<br>";

$data=fgets($f); //читаем текст сообщения

echo "<small>Сообщение: </small>".$data."<br>";

echo "<hr>"; //отделяем сообщение горизонтальной линией

}

fclose($f); //закрываем файл

include("footer.html");

?>

Листинг 2.4. Обратная связь

<?php

session_start();

include("header.html");

?>

<form name="my_form" action="admin.php" method="POST">

В данном разделе вы можете написать вопрос администратору!

<br><br><br>

<table> <tr><td>Введите имя:</td> <td><input type="name" name="name_of_user" value=" "

title="поле для ввода имени" size=20 maxlength=10></td></tr>

<tr><td>Введите e-mail: </td> <td><input type="e-mail" e-mail="e-mail_of_user" value=" "

title="поле для ввода e-mail" size=20 maxlength=30></td></tr>

</table>

</form>

<br><br>

Ваш вопрос администратору:

<br>

<textarea

name="вопрос_админу"

rows="10"

cols="50">

</textarea>

<br><br>

<DIV class=cs__submit> <A href="mailto:o.sushkova@mail.ru"> <INPUT id=submit_survey value=Отправить type=submit name=submit_survey></A>

</DIV></FORM>

<?

// echo"<DIV class=cs__powered><A href=\"mailto:o.sushkova@mail.ru\">Моя почта!</A></DIV></TD></TR></TBODY></TABLE></DIV></BODY></HTML>";

include("footer.html");

?>

    1. Выводы

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

Внедрение веб-ориентированной ИС позволяет помимо хранения информации, обеспечить ее быстрый отбор и анализ, что существенно облегчит использование онтологий.

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

Для создания системы мною была спроектирована структура базы данных и разработан пользовательский интерфейс, а также решены следующие задачи:

  • для гостей системы реализована страница регистрации, с проверкой на предмет ошибок по всем введённым ими полям. Гости системы могут также оставить сообщение в гостевой книге;

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

  • для администратора системы реализованы возможности изменения личной информации зарегистрированных пользователей.

Главным преимуществом данной системы, посвященным онтологиям в целом, наиболее пригодной для пользователей Рунета является то, что она получила бы наибольшее развитие в современном обществе. Так как в сети Интернет нет специализированной системы подходящей для пользователей Рунета. Кроме того, простота в использовании моего электронного курса позволят сделать систему более выигрышной по сравнению со всеми другими, опубликованными в сети Интернет.