Sao chép dữ liệu vào Database trong AS3 qua PHP & MySQL (Guestbook)

Việc truyền và sao chép dữ liệu từ Flash vào Database là công việc không quá phức tạp. Tuy nhiên ngoài Flash thì nó còn cần sự tham gia của PHP và SQL. Trong bài này tôi muốn giới thiệu cách làm 1 guestbook đơn giản với thông tin được nhập từ Flash sẽ được chép thẳng vào Database thông qua PHP.

Các thông tin cần lưu trong Database bao gồm: name, email, subject, message và time.

Bước 1: Chuẩn bị Database.

Trong Database “guestbook” ta cần tạo 1 bảng tên là “guestbook_table“:

CREATE TABLE IF NOT EXISTS `guestbook_table` (
`ID` int(5) NOT NULL AUTO_INCREMENT,
`name` text COLLATE utf8_unicode_ci NOT NULL,
`email` text COLLATE utf8_unicode_ci NOT NULL,
`subject` text COLLATE utf8_unicode_ci NOT NULL,
`message` text COLLATE utf8_unicode_ci NOT NULL,
`time` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
PRIMARY KEY (`ID`)
)

Bước 2: ActionScript

Trong Flash ta cần 4 Input Text gồm: “name_txt“, “email_txt“, “subject_txt” và “message_txt“, 1 Dynamic Text làm thông tin tên là “hin_txt” và 1 button “send_btn“.

ActionScript:

var name_var:String;
var email_var:String;
var subject_var:String;
var message_var:String

send_btn.addEventListener(MouseEvent.CLICK, sendData);
function sendData(evt:MouseEvent):void
{
var myData:URLRequest = new URLRequest("insert.php");
myData.method = URLRequestMethod.POST;
var variables:URLVariables = new URLVariables();
variables.name_var = name_txt.text;
variables.email_var = email_txt.text;
variables.subject_var = subject_txt.text;
variables.message_var = message_txt.text;
myData.data = variables;
var loader:URLLoader = new URLLoader();
loader.dataFormat = URLLoaderDataFormat.VARIABLES;
loader.addEventListener(Event.COMPLETE, dataOnLoad);
loader.load(myData)
}
function dataOnLoad (evt:Event):void {
name_txt.text = "";
email_txt.text = "";
subject_txt.text = "";
message_txt.text = "";
hin_txt.text = "Your message has been sent, thank you"
}

Bước 3: PHP (insert.php)

<?php
$ketnoiServ = mysql_connect("servername","username","password");
if($ketnoiServ){
$ketnoiDB = mysql_select_db("guestbook");

$sql = "INSERT INTO guestbook_table (time, name, email, subject, message)
VALUES ( NOW(''),
'".$_POST['name_var']."',
'".$_POST['email_var']."',
'".$_POST['subject_var']."',
'".$_POST['message_var']."')";
$ketqua = mysql_query($sql, $ketnoiServ);
?>

Như vậy là đã xong 1 guestbook đơn giản, chúc bạn thành công.
Nếu bạn quan tâm đến quá trình ngược lại tức là gọi dữ liệu từ Database lên cũng thông qua PHP & MySQL thì bài “Lấy dữ liệu từ Database trong AS3 qua PHP & MySQL” có thể có ích cho các bạn.