2009-06-13 7 views
5

Je voudrais commencer à utiliser la fonctionnalité de base de données côté client de html5, mais je ne sais pas où aller pour une bonne introduction/tutoriel/how-to. J'ai codé (x) html pendant des années et des années, donc je ne suis pas tellement intéressé par un type d'introduction "voici le <head>"; Je veux en savoir plus sur ce qui est nouveau en html5 en général, et db côté client en particulier. Aucune suggestion?Où puis-je apprendre comment utiliser html5 pour les applications de base de données côté client?

+0

Si vous avez trouvé la réponse utile merci de la cocher :) –

Répondre

0
+0

(je sais qu'elle est destinée à l'OS Palm Web mais c'est parce qu'ils utilisent la dernière version de Webkit qui prend en charge le stockage db côté client HTML5) –

+0

Merci. Chose étrange, cependant: j'ai vérifié le premier lien ci-dessus, et il ne rend pas correctement, dans Safari 4 ou Firefox 3 (les deux sur Mac OS X). C'est comme si le texte était décalé de 20 pixels ou plus, donc hors de la fenêtre. Est ce juste moi? Le troisième lien semble prometteur; Je vais probablement vérifier plus à fond demain. Merci encore. –

3

Alex, j'ai écrit une méthode détaillée de la façon de le faire à: http://wecreategames.com/blog/?p=219 - source, y compris code à télécharger. Voici quelques extraits:

function picsInitDatabase() { 
    try { 
     if (!window.openDatabase) { 
      console.log('Databases are not supported in this browser'); 
     } else { 
      var shortName = 'picsGeoDB'; 
      var version = '1.0'; 
      var displayName = 'Pictures Geotagged database'; 
      var maxSize = 5000000; // in bytes 
      picsDB = openDatabase(shortName, version, displayName, maxSize); 
      console.log("Database is setup: "+picsDB); 
     } 
    } catch(e) { 
     // Error handling code goes here. 
     if (e == 2) { 
      // Version number mismatch. 
      console.log("Invalid database version."); 
     } else { 
      console.log("Unknown error "+e+"."); 
     } 
     return; 
    } 
} 

Et voici une fonction pour mettre à jour la table:

function picsUpdateTables(dataID) { 
    picsDB.transaction(
     function (transaction) { 
      var p = data[dataID]; 
      transaction.executeSql("INSERT INTO geopictures (id, secret, server, farm, title, latitude, longitude, accuracy, datetaken, ownername) VALUES (?,?,?,?,?,?,?,?,?,?);", 
      [p.id, p.secret, p.server, p.farm, p.title, p.latitude, p.longitude, p.accuracy, p.datetaken, p.ownername]); 
      transaction.executeSql("INSERT INTO photodata (picid, encodedtext) VALUES (?, ?)", [p.id, serializeCanvasByID(p.id)]); 
     } 
    ); 
} 

Voir le blog des exemples de la façon de faire SELECTs, et une vidéo montrant comment le tester sur quelques navigateurs.

+0

Le code source téléchargeable rend cela complètement intéressant. Bon travail. –

Questions connexes