2011-11-20 2 views
0

jQtouch를 사용하여 간단한 todo 웹 응용 프로그램을 만들려고하고 있지만 SQLite 데이터베이스를 만드는 데 시간이 필요합니다. 또는 테이블이없는 데이터베이스가 만들어지고 Safari를 새로 고침하면 데이터베이스가 다시 만들어져 다른 이름을 가진 많은 데이터베이스가 생성됩니다.jQtouch가 포함 된 웹 응용 프로그램의 SQLite

$(function() { 

var db; 


//DATABASE 
var shortName = 'todosDB'; 
var version = '1.0'; 
var displayName = 'todosDB'; 
var maxSize = 65536; 
db = openDatabase(shortName, version, displayName, maxSize); 
db.transaction(
    function(transaction) { 
     transaction.executeSql(
      'IF NOT EXISTS CREATE TABLE todos ' + 
      '(id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, ' + 
      'todo TEXT NOT NULL, description TEXT NOT NULL' + 
      'date DATE);' 
     ); 
    } 
); 

그리고 마지막으로 만들 때 db에 데이터를 넣으려고하면 아무 일도 일어나지 않습니다.

db.transaction(
     function(transaction) { 
       transaction.executeSql(
        'INSERT INTO todos (todo, description) VALUES (' + $('#todo').val() + ', ' + $('#description').val() + ');' 
       ); 
      } 
     ); 

어떤 도움을 주시면 감사하겠습니다. jQtouch가 초기 함수를 처리하는 방법 때문에 문제가 발생했는지 알 수 없습니까? 트랜잭션이 실행되지 않아서 오프닝 라인에 문제가 있음을 알게됩니다.

편집 : 내가 가진 가장 큰 문제는 데이터베이스를 복제하는 것입니다. 브라우저를 새로 고칠 때마다 다른 데이터베이스가 만들어집니다. 이제 테이블이 생성되지만 매번 새로운 테이블을 생성 할 때마다 새로운 데이터베이스가 생성되기 때문에 테이블이 생성됩니다.

답변

3

phonegap을 사용하면 휴대폰에 기본 api를 사용하고 코드를 phonegap의 준비 기능에 넣습니다. 또한 문제가 계속 발생하면 코드 위치에 경고를하고 마지막 경고가 언제 나타나는지 확인하십시오. 마지막 경고 이후의 라인이 문제가 될 것입니다

관련 문제