|
|
 |
Flash и базы данных |
Автор: Олег Камашев
Источник:
kamashev.flashmaster.ru
Эта статья посвящена практическому применению Flash в разработке интерфейсов
к базам данных. Я попробую на примерах объяснить как все это работает и дать кое
какие рекомендации по использованию этой технологии.
База данных
В качестве сервера баз данных можно использовать практически любой из распостраненных
серверов. Но обычно при постановке задачи необходимо учитывать какой сервер баз
данных будет доступен на хостинге. Поэтому если у вас нет хостинга с MSSQL или
Oracle, то выбор однозначен - MySQL. Предоставляется большим количеством даже
бесплатных хостингов, не говоря уж о платных.
Итак, определившись с сервером баз данных, создадим на нем таблицу. Для создания
таблицы необходимо либо знать SQL, либо найти хостинг предоставляющий интерфейс
к базе данных (обычно это phpMyAdmin).
Создадим таблицу для гостевой книги:
CREATE TABLE guestbook (
id int(11) NOT NULL auto_increment,
name varchar(20) NOT NULL,
mail varchar(50) NOT NULL,
message text NOT NULL,
PRIMARY KEY (id)
);
В ней будут храниться сообщения нашей гостевой книги. Добавим несколько произвольных
записей и пойдем дальше.
Серверные скрипты
Тут тоже есть выбор, правда более ограниченый: Perl, PHP, ASP(при хостинге на
Windows NT). По сути, большой разницы нет, поэтому дальше будем рассматривать
примеры на PHP.
Итак напишем простейший скрипт позволяющий получить скажем сообщение с каким-то
идентификатором от сервера баз данных.
Создадим файл с именем, например, select.phtml (в зависимости от сервера баз данных
расширение может быть и php и php3). И напишем в нем следующий код:
<?php
$num=3; // Это номер запрашиваемого сообщения при вызове из Flash эту строку нужно
удалить
$server_IP = "server"; // Это имя или IP-адрес сервера
$login = "your_login";// Ваш login к базе данных
$password = "your_password";// Соответственно пароль
$database = "your_database";// Имя базы данных на сервере
$link=mysql_connect( $server_IP , $login , $password ) or die ("Not connected!");//
Пробуем присоединиться к базе данных
//Тут бы еще проверку результата присоединения :)
mysql_select_db( $database,$link);// Переходим в базу, где расположена таблица
guestbook
$result=mysql_query("select * from guestbook where id = ".num ,$link);// Запрашиваем
запись с id равным num
echo "name=".mysql_result($result,0,1)."&mail=".mysql_result($result,0,2)."&message=".mysql_result($result,0,3);//Формирование
строки результата
?>
Если мы выполним этот скрипт через браузер, то при отсутствии ошибок в коде, настроенном
сервере, наличии доступа к базе данных и записей в таблице мы увидим на экране
строку типа :
name=Олег Камашев&mail=kamashev@mail.ru&message=Не стесняйтесь, пишите
чаще :)
Это результат выполнения нашего запроса, в том формате, который понимает Flash.
Т.е. Переменная1=Значение1&Переменная2=Значение2&Переменная3=Значение3&.....
FLASH
В этой части все гораздо проще. Нам осталось встроить в мувик вызов этого скрипта.
Для этого в необходимом месте (например в первом фрейме) мы вставляем код:
num=2; //Определим переменную для передачи ее скрипту в виде параметра
loadVariablesNum("http://www.myserver.com/select.html",0,"POST"); // Вызовем скрипт
После чего (проверив завершение загрузки переменных по наличию последней), мы
можем смело пользоваться переменными name, mail и message. Если в мувике есть
динамические поля привязанные к этим переменным, они отобразят результат нашего
запроса.
Для выполнения вставки, удаления или сложных выборок из базы пишутся дополнительные
серверные скрипты, содержащие эти операции. А вызов скриптов и отображение результатов
осуществляется абсолютно аналогично.
На этом все. Все вопросы и замечания пишите на kamashev@mail.ru.
Автор: Олег Камашев
Источник:
kamashev.flashmaster.ru
|