Browse Category

WebDev

get Column names SQLite tables using Adobe AIR + Javascript


var db = air.File.documentsDirectory.resolvePath("[database path / database name]");
conn = new air.SQLConnection();
conn.open(db);
sql = new air.SQLStatement();
sql.sqlConnection = conn;

conn.loadSchema();
ax = conn.getSchemaResult();

var col = [];

sc = ax.tables;
error(sc);
num = sc.length;
for (var i=0;i<num;i++){
    if (sc[i].name == "[table name contains the column]"){
        numc = sc[i].columns.length;
        for (var y=0;y<numc;y++){
            nn = sc[i].columns[y].name;
            col.push(nn);
            error(y);
        }
    }
}

var cx = 0;
for (var x=0;x<col.length;x++){
    error(col[x]);
    if (col[x] == "[column name we are looking for]"){
        cx = 1;
    }
}
error(cx);
if (cx != 1){
        sql.text = "ALTER TABLE [tablename] ADD COLUMN [column name] TEXT";
        sql.execute();
        error("altered");
}else{
    error("not altered");
}

Adobe Air : koneksi database sqlite & get last insert id

biar gak lupa, berikut snippet koneksi db di adobe air dan untuk mendapatkan last insert ID (kalau di pehape mysql_insert_id), dengan javascript :

var dnama = $('#tnama').val();
var dalamat = $('#talamat').val();

//resolve lokasi file database
var db = air.File.applicationDirectory.resolvePath("fanta.db");

//bikin koneksi db
var conn = new air.SQLConnection();

//persiapan bikin query db trus eksekusi query
var tsql = new air.SQLStatement();
tsql.text = "insert into responden (nama, alamat) values ('"+dnama+"', '"+dalamat+"')";
tsql.sqlConnection = conn;
tsql.execute();

//mendapatkan id last insert (kalau di PHP : mysql_insert_id)
result = tsql.getResult();
primekey = result.lastInsertRowID;

Adobe Air – preparasi

Tes Aplikasi

untuk tes aplikasi, tanpa harus compile via Dreamweaver :


./adl -runtime [path_to_Adobe AIR.framework folder] my_application.xml

kalau yang biasa saya pakai ada di :

./adl -runtime /Users/dilardarmawan/Documents/AdobeAIRSDK/runtimes/air/mac/ my_application.xml

Console Debug

untuk console, dapat memakai AirInstrospector.js

cukup include kan di file index.html atau terserah dimana. untuk mendapatkan log bisa menggunakan :

air.Introspector.Console.log();

selengkapnya di SINI

Auto resize Iframe

Project web yang dikerjakan beberapa bulan ini masih menyisakan beberapa bug yang belum terselesaikan. Salah satunya adalah penggunaan iframe dalam halaman index.

Sebenarnya mudah menggunakan iframe dalam halaman HTML

<iframe id=”myframe” src=”<? echo “berita/$berita/$berita.htm”; ?>” scrolling=”no” marginwidth=”0″ marginheight=”0″ frameborder=”0″ vspace=”0″ hspace=”0″ style=”overflow:visible; width:100%; display:none”></iframe>

namun, karena konten dalam iframe masih dalam bentuk variabel yang menunjuk ke halaman lain, sedangkan halaman dalam iframe tersebut mempunyai panjang halaman yang berbeda-beda, maka masalah pun muncul.

Keep Reading