पर तर्क कैसे पारित करें मेरे पास एक फ़ोनिंग डेटाबेस डेटाबेस लेनदेन है जहां मैं एक SQL क्वेरी चलाने और परिणामों को संसाधित करने में सक्षम हूं। हालांकि, इसे पुन: प्रयोज्य बनाने के प्रयास में, मुझे क्वेरीिंग फ़ंक्शन में तर्क पारित करने के लिए एबी होना चाहिए। वैश्विक चर घोषित करने और क्वेरी फ़ंक्शन में उन्हें रीसेट करने से उन्हें बेहतर तरीका होना चाहिए। कुछ इस तरह केफोनगैप डेटाबेस लेनदेन फ़ंक्शन
//update images function
function updateGalleryCovers() {
var db = window.openDatabase("test db", "1.0", "Cordova DB", 200000);
db.transaction(queryDB_u_g, errorCB);
}
//Query the database
function queryDB_u_g(tx) {
var query = 'SELECT cover_img, objectId FROM USER_GALLERY WHERE userId="'+getUserId()+'"';
tx.executeSql(query, [], querySuccess_u_g, errorCB);
}
//Query success callback
function querySuccess_u_g(tx, results) {
var len = results.rows.length;
for (var i=0; i<len; i++){
// process results
}
}
: इस परिवर्तित करने में किसी भी मदद की सराहना
//update images function
function updateGalleryCovers(userid) {
var db = window.openDatabase("test db", "1.0", "Cordova DB", 200000);
db.transaction(queryDB_u_g, userid, errorCB);
}
//Query the database
function queryDB_u_g(tx, userid) {
var query = 'SELECT cover_img, objectId FROM USER_GALLERY WHERE userId="'+userid+'"';
tx.executeSql(query, [], querySuccess_u_g, errorCB);
}
//Query success callback
function querySuccess_u_g(tx, results) {
var len = results.rows.length;
for (var i=0; i<len; i++){
// process results
}
}
धन्यवाद!
और आपका दूसरा उदाहरण क्यों काम नहीं करता है? मुझे पूरा यकीन है कि आप फ़ंक्शन में वेरिएबल पास कर सकते हैं और उनका उपयोग कर सकते हैं। – Leeish
@Leeish: Phonegap Database.transaction() विधि क्वेरी को निष्पादित करने वाले कार्यों के नाम स्वीकार करती है, इसके बाद कॉलबैक फ़ंक्शंस के नाम होते हैं। एक तर्क पारित करने के लिए कोई प्रावधान नहीं है जिसे मैं जानता हूं। http://docs.phonegap.com/en/2.3.0/cordova_storage_storage.md.html#Database – nikhilw
मुझे अपने कुछ कोड देखें ... – Leeish