ȸ¿ø·Î±×ÀÎ
Flex¿Í MySQLÀÇ ¿¬µ¿ (PHP»ç¿ë)
13³â Àü
Flex´Â MySQL°ú Á÷Á¢ÀûÀ¸·Î ¿¬µ¿À» ÇÒ¼ö°¡ ¾ø½À´Ï´Ù.
¶§¹®¿¡ Flex->PHP->MySQL->XML->Flex ¶ó´Â ´Ù¼Ò º¹ÀâÇÑ °úÁ¤À» °ÅÃľßÇÕ´Ï´Ù.
(PHP ´ë½Å¿¡ ASP ȤÀº JSP µîÀ» »ç¿ëÇÒ¼öµµ ÀÖ½À´Ï´Ù.)
(¹°·Ð Àß Ã£¾Æº¸¸é DB¸¦ ¿¬µ¿ÇÒ¼ö ÀÖ´Â ÄÄÆ÷³ÍÆ®°¡ ÀÖ±äÇÕ´Ï´Ù¸¸,
Flex ÀÚü¿¡¼ Á¤½ÄÀ¸·Î Áö¿øÇÏÁö´Â ¾Ê½À´Ï´Ù. ÀÚ¼¼ÇÑ Á¤º¸¸¦ ¿øÇϽøé
http://code.google.com/p/assql/ ¸¦ Âü°íÇϽñ⠹ٶø´Ï´Ù.)
°³·«ÀûÀÎ ÇÁ·Î±×·¥ÀÇ È帧Àº ´ÙÀ½°ú °°½À´Ï´Ù.
inputID¶ó´Â textinput¿¡¼ ID¸¦ ¹Þ¾Æ¼ ¹öÆ°À» ´·¯ PHPÆÄÀÏÀ» È£ÃâÇÕ´Ï´Ù.
PHPÆÄÀÏ¿¡¼´Â mxml¿¡¼ º¸³½ id¸¦ ¹Þ¾Æ¼ ÇØ´ç idÀÇ ÆÄÀÏ ¸ñ·ÏÀ» ¾ò¾î¿Í¼
xmlÇü½ÄÀ¸·Î ¸¸µé¾î¼ ´Ù½Ã flex·Î º¸³À´Ï´Ù.
ÀÚ ´ÙÀ½Àº ¼Ò½º¸¦ º¸µµ·Ï ÇսôÙ.
MXML
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
import mx.controls.Alert;
import mx.rpc.http.HTTPService;
import mx.rpc.events.ResultEvent;
private var SQLData:ArrayCollection = new ArrayCollection();
private function sendAndReceive(event:ResultEvent):void {
SQLData = event.result.file; //DB¿¡¼ ¹Þ¾Æ¿Â ³»¿ëÀ» ¹è¿¿¡ ¹ÙÀεù
}
]]>
</mx:Script>
<mx:HTTPService id="request" method="POST" url="http://xxx.xxx.xxx.xxx/~next2008/index.php" useProxy="false" result="sendAndReceive(event)">
<!--urlÀº phpÆÄÀÏÀÇ °æ·ÎÀÌ°í, result´Â phpÆÄÀÏ È£ÃâÈÄ ½ÇÇàÇÒ ÇÔ¼ö¸íÀÔ´Ï´Ù.-->
<mx:request xmlns="*">
<userID>{inputID.text}</userID>
<!--½ÇÁúÀûÀ¸·Î php¿¡ µ¥ÀÌÅÍ º¸³»´Â°÷ÀÔ´Ï´Ù. <tag>³»¿ë</tag>Çü½ÄÀ¸·Î Ãß°¡ÇÏ¸é µË´Ï´Ù.-->
</mx:request>
</mx:HTTPService>
<mx:Panel title="example" width="100%" height="255">
<mx:TextInput id="inputID"/>
<mx:Button click="request.send();" />
</mx:Panel>
</mx:Application>
PHP
<?
$inputID = $_POST['userID'];
//Flex¿¡¼ º¸³½ µ¥ÀÌÅ͸¦ ¹Þ½À´Ï´Ù. º¯¼ö¸¦ Ãß°¡·Î ´õ ¹ÞÀ»¶§´Â
//"$º¯¼ö = $_POST['tag'];" Çü½ÄÀ¸·Î ÇÕ´Ï´Ù.
$link = @mysql_connect ("MySQLÁÖ¼Ò", "ID", "Æнº¿öµå");
//MySQLÀÌ ÀÖ´Â ÁÖ¼Ò¸¦ ÀûÀ¸¸é µË´Ï´Ù. phpÆÄÀÏÀÌ Àִ°÷¿¡ DB°¡ ÀÖ´Ù¸é
//localhost ¶ó°í ÇÏ¸é µË´Ï´Ù. ID¿Í Æнº¿öµå´Â mysqlÀÇ ¾ÆÀ̵ð¿Í Æнº¿öµåÀÔ´Ï´Ù.
$db = mysql_select_db("web", $link);
//db¼±ÅÃ
$query = "select * from userinfo where id='" .$inputID. "'";
$result = mysql_query($query, $link) or die ("Äõ¸®À߸ø");
//Äõ¸®
$data = mysql_fetch_array($result) or die("µ¥ÀÌÅÍ ¸ø³Ñ°Ü¹ÞÀ½(IDÀÌ»ó)");
$ID = $data[0];
$db = mysql_select_db($ID, $link);
//db±³Ã¼
$query = "select * from file";
$result = mysql_query($query, $link) or die("Äõ¸®ÀÌ»ó");
$dataNum = mysql_num_rows($result);
$fileList = array();
for($i = 0; $i < $dataNum; $i++)
{
$data = mysql_fetch_array($result) or die("µ¥ÀÌÅÍ À߸ø³Ñ°Ü¹ÞÀ½");
for($j = 0; $j < 4; $j++)
$fileList[$i][$j] = $data[$j];
}
//µ¥ÀÌÅ͸¦ ¹è¿·Î ¹Þ¾Æ¿É´Ï´Ù.
for($i = 0; $i < $dataNum; $i++)
{
$return .= "<file><name>" . $fileList[$i][0] . "</name><upperfolder>" . $fileList[$i][1] . "</upperfolder><size>" . $fileList[$i][2] . "</size><date>" . $fileList[$i][3] . "</date></file>";
}
print($return);
//xmlÇü½ÄÀ¸·Î ¸¸µé¾î¼ »Ñ·ÁÁÝ´Ï´Ù.
mysql_close($link);
?>
MySQL
db»ý¼º-web
create database web;
web/userinfoÅ×À̺í»ý¼º
create table userinfo(id char(10) not null, name char(10) not null, password char(16) not null, nickname char(20) not null, primary key(id));
web/userinfoÅ×ÀÌºí¿¡ µ¥ÀÌÅÍ »ðÀÔ
insert into userinfo values('tkeo', 'ÃÖÀθí', 'asdf', 'Rese');
db»ý¼º-tkeo
create database tkeo;
tkeo/fileÅ×ÀÌºí »ý¼º
create table file(fileName char(20) not null, upperFolder char(20) not null, size integer not null, updateDate integer not null, primary key(fileName));
tkeo/fileÅ×ÀÌºí¿¡ µ¥ÀÌÅÍ »ðÀÔ
insert into file values('fghj.exe', 'aaaa', 1301, 20070222);
̵̧ : 660
̵̧
¸ñ·Ï