Я создаю приложение calander для Android в appcelerator, но сейчас у меня возникают некоторые проблемы с получением информации из базы данных в tableView. Я новичок в appcelerator и у меня есть несколько вопросов.
Я создал несколько таблиц в SQL, которые я получаю с помощью PHP-скрипта. Но теперь, когда я пытаюсь получить эту информацию из моей базы данных в моем приложении, что-то идет не так. Можно ли сделать так, используя скрипт php, или я должен использовать что-то еще? (Если вы перейдете по ссылке, вы увидите скрипт php, который создает xml. Я, вероятно, изменю его, чтобы событие отображалось по дате: 2012/1/2 GFT, Restafval, PMD; 2012/1/17 papier en karton; и т.д.)
var win = Titanium.UI.currentWindow;
var data = [];
var xhr = Ti.Network.createHTTPClient();
xhr.open('GET', 'http://www.dehertoghnathalie2011.dreamhosters.com/titanium/kalender.php');
xhr.onload = function(){
try
{
var doc = this.responseXML.documentElement;
var items = doc.getElementsByTagName('gebeurtenis');
var x = 0;
for(var i = 0; i<items.length; i++)
{
var afhaaldag = items.gebeurtenis(i);
var datum = gebeurtenis.getElementsByTagName('datum').gebeurtenis(0).text;
var afval = gebeurtenis.getElementsByTagName('afval').gebeurtenis(0).text;
var row = Ti.UI.createTableViewRow({height:80});
var labelText = datum;
var label = Ti.UI.createLabel({
text:labelText,
color:'black',
textAlign:'left'
});
row.add(label);
data[x++] = row;
}
}
catch(E)
{
alert(E);
}
var table = Ti.UI.createTableView({data:data});
win.add(table);
}
xhr.send();
Итак, когда я запускаю это в эмуляторе Android, я получаю исключение: «Не удается найти функцию gebeurtenis в объекте [Ti.NodeList]». Кто-нибудь знает, как я могу решить эту проблему?
А также: каков наилучший способ передачи информации из базы данных и в нее? Лучше всего использовать httpClient (xhr) или SQLite? Если я понимаю, SQLite используется для хранения на устройстве (например, в настройках или в моем случае, когда кто-то хочет получить уведомление о предстоящем событии), а httpClient используется для RSS. Можете ли вы дать мне другие примеры для httpClient?
Спасибо!