[kml_flashembed movie=”/labs/swf/phpwritetodb.swf” height=”150″ width=”450″ /]

I have written a small script that will assist you into using communication between Flash and PHP to write to a mySQL database. The task is simple, verify the contents of the fields in flash and then send the information to PHP who then writes the information into the database.

var submitListener:Object = new Object();
submitListener.click = function(evt:Object) {
try {
checkForm();
}
catch(e) {
result_ta.text = e.toString();
return;
}
var result_lv:LoadVars = new LoadVars();
result_lv.onLoad = function(success:Boolean) {
if (success) {
trace(“THE ERROR = ” + result_lv.error);
trace(unescape(result_lv.toString()));
if (result_lv.error != undefined) {
result_ta.text = result_lv.error;
}else{
result_ta.text = “Wrote to DB: \n”;
result_ta.text += “First Name = ” + result_lv.fname + “\n”;
result_ta.text += “Last Name = ” + result_lv.lname + “\n”;
result_ta.text += “Age Name = ” + result_lv.age + “\n”;
result_ta.text += “Total Records = ” + result_lv.nuRows + ““;
}
} else {
result_ta.text = “Error connecting to server.”;
}
}
var send_lv:LoadVars = new LoadVars();
send_lv.fname = fn_tfl.text;
send_lv.lname = ln_tfl.text;
send_lv.age = age_tfl.text;
send_lv.sendAndLoad(“path/to/your/php/file.php”, result_lv, “POST”);
};
submit_btn.addEventListener(“click”, submitListener);
function checkForm() {
if (fn_tfl.text == undefined || fn_tfl.text.length < 1) { throw new Error("First name is required"); } if (ln_tfl.text == undefined || ln_tfl.text.length < 1) { throw new Error ( "Last name is required"); } if (age_tfl.text == undefined || age_tfl.text.length < 1) { throw new Error ( "Age is required"); } }[/as]

This is the script used to create the tables and fields:

  1. CREATE TABLE `users` (<br />
  2. `id` INT( 6 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,<br />
  3. `fname` VARCHAR( 15 ) NOT NULL ,<br />
  4. `lname` VARCHAR( 15 ) NOT NULL ,<br />
  5. `age` INT( 3 ) NOT NULL<br />
  6. ) ENGINE = MYISAM ;

Make sure you check the mySQL version on your server in case you encounter any errors.