Flash-dən Mysql-ə və əksinə verilən ötürmək zərurəti veb-də flash applicationlardan istifadə edən hər bir proqramçıya lazım ola bilir.(flash oyun, flash test və.s.-lərdə registration, highscore və.s.-in bazaya yazılması və ordan oxuması). Bunun üçün bir neçə üsulla rastlaşmışam indiyədək, mən öz istifadə etdiyimi, özüm düzüb qoşduğumu paylaşıram.
1. Mysql-dən flasha. Bu bir az sadədir, belə ki, sehife1.php faylındakı flash obyektin html kodundakı faylın adına GET metodu ilə lazımı dəyişəni ötürürük.
$deyishen=mysql_result(mysql_query("select ad from cedvel where id='1';"),0);
Tutaq ki yuxarıdakı kimi mysql-dən veriləni dəyişənə mənimsətdik, indi onu flasha ötürək.
<object classid.....
<param name="movie" value="biliklimsn.swf?deyishen=" />
....
<embed src="biliklimsn.swf?deyishen=".......
Iş tamamdır, flash faylın daxilində _root.deyishen dəyişəni məhz biz istəyən mysql verilənidir indi.
2. İndi isə flashda emal olunmuş veriləni əksinə, php-dən mysql-ə qaytaraq.
sehife2.php adlı fayla bu kodu əlavə edirik:
$input = file_get_contents("php://input");
mysql("update cedvel set ad='$input' where id='1'");
echo 'İş tamamdır';
Daha sonra sehife1.php-dəki uyğun flash faylın root freymlərindın birinə bu kodu daxil edirik.
my_str = _root.deyishen+'aaa';
var my_xml:XML = new XML(my_str);
my_xml.contentType = "text/xml";
var receive_xml:XML = new XML();
receive_xml.onLoad = function(success){
if(success){
_root.status.text=this.toString();
my_xml.sendAndLoad("sehife2.php", receive_xml);
} else {
_root.status.text="Xəta baş verdi";
}
}
Bununla da əsas mexanizm təsvir olundu. Bu mexanizmlə istənilən sayda və həcmdə veriləni bazadan flasha və əksinə ötürmək olar. Məsələn əgər istifadəçi sehife1.php faylında flash oyun oynayırsa, və ordakı istifadəçi adını dəyişmək istəyirsə, o halda oyun başlayanda 1) vasitəsi ilə onun adı flasha ötürülür, flashda redaktə etdikən sonra submit edir, və 2) vasitəsi ilə ad bazada update olunur.
Bu çarə yəqin ki daha çox spam filan kimi şeylərdə işə yarayar.
veb serverdə də iptables`dan istifadə olunur.