Autore Topic: aggiorare db online  (Letto 3080 volte)

Offline maverik1408

  • Utente junior
  • **
  • Post: 100
  • Respect: +1
    • Mostra profilo
    • MaverikApps
  • Dispositivo Android:
    NEXUS 5
  • Play Store ID:
    Maverik
aggiorare db online
« il: 01 Dicembre 2011, 10:09:28 CET »
0
ciao a tutti, sono nuovo del forum!!!

stavo provando a realizzare un'app dove creo un db e fino a qui tutto bene.

ora volevo realizzare una funzione che quando parte l'applicazione interroga un db sempre sqlite su un sito web dove controllo se devo ci sono delle nuove righe da inserire nel db senza aggiornare la struttura delle tabelle che per questo c'è "onupdate".

qual'è il metodo più corretto per fare ciò????

grazie mille
Maverik @ Google Play Store

Offline bart

  • Utente junior
  • **
  • Post: 133
  • Respect: 0
    • highlanderteam
    • BBartsv
    • Mostra profilo
  • Dispositivo Android:
    samsung galaxy tab
  • Play Store ID:
    barth
  • Sistema operativo:
    ubuntu 11.04,mac os leopard,windows7
Re:aggiorare db online
« Risposta #1 il: 01 Dicembre 2011, 10:45:20 CET »
0
ciao io di solito uso un httppost che si collega ad una pagina php sul mio server ed lui va ad aggiornare la base dati che ho in remoto

Offline maverik1408

  • Utente junior
  • **
  • Post: 100
  • Respect: +1
    • Mostra profilo
    • MaverikApps
  • Dispositivo Android:
    NEXUS 5
  • Play Store ID:
    Maverik
Re:aggiorare db online
« Risposta #2 il: 01 Dicembre 2011, 11:49:01 CET »
0
quindi usando httppost riesco a leggere i dati dal web e scaricarli sul mio db nel dispositivo?

qualche esempio è troppo ??? :)
Maverik @ Google Play Store

Offline bart

  • Utente junior
  • **
  • Post: 133
  • Respect: 0
    • highlanderteam
    • BBartsv
    • Mostra profilo
  • Dispositivo Android:
    samsung galaxy tab
  • Play Store ID:
    barth
  • Sistema operativo:
    ubuntu 11.04,mac os leopard,windows7
Re:aggiorare db online
« Risposta #3 il: 01 Dicembre 2011, 13:58:18 CET »
0
ciao oggi ti mando una mail con una prova,,pero io non uso un db locale ma quello che mi arriva lo salvo in un array od in una lista poi se vuoi mandare indietro dei dati io uso una stringa che invio al codice php e la splitto sul server ed aggiorno i vari campi

Offline bart

  • Utente junior
  • **
  • Post: 133
  • Respect: 0
    • highlanderteam
    • BBartsv
    • Mostra profilo
  • Dispositivo Android:
    samsung galaxy tab
  • Play Store ID:
    barth
  • Sistema operativo:
    ubuntu 11.04,mac os leopard,windows7
Re:aggiorare db online
« Risposta #4 il: 01 Dicembre 2011, 21:05:03 CET »
0
ciao sei riuscito a risolvere?hai cercato su google?
non sono riuscito a farti molto xche sono abbastanza preso,comunque in uno dei miei post avevo trattato questo argomento,dato che sono ancora alle prime armi

Offline maverik1408

  • Utente junior
  • **
  • Post: 100
  • Respect: +1
    • Mostra profilo
    • MaverikApps
  • Dispositivo Android:
    NEXUS 5
  • Play Store ID:
    Maverik
Re:aggiorare db online
« Risposta #5 il: 02 Dicembre 2011, 08:20:40 CET »
0
ciao, nessun problema !!!

ho cercato un pò su google ma ancora non ho trovato nulla che faccesse al caso mio!!

volevo tenere il db in locale in modo da poter usare l'applicazione anche quando non si è connessi! ;)
Maverik @ Google Play Store

Offline bart

  • Utente junior
  • **
  • Post: 133
  • Respect: 0
    • highlanderteam
    • BBartsv
    • Mostra profilo
  • Dispositivo Android:
    samsung galaxy tab
  • Play Store ID:
    barth
  • Sistema operativo:
    ubuntu 11.04,mac os leopard,windows7
Re:aggiorare db online
« Risposta #6 il: 02 Dicembre 2011, 08:58:16 CET »
0
si si potresti salvare ogni tot il database in locale ;-) quando ti colleghi con httpost invece di salvare in una lista salvi direttamente nel db poi poi ogni tot mandi in background un thread chee controlla se ci sono aggiornamenti sul db remoto,e li vai a salvare nel db se ci sono aggiornamenti

Offline maverik1408

  • Utente junior
  • **
  • Post: 100
  • Respect: +1
    • Mostra profilo
    • MaverikApps
  • Dispositivo Android:
    NEXUS 5
  • Play Store ID:
    Maverik
Re:aggiorare db online
« Risposta #7 il: 02 Dicembre 2011, 10:07:46 CET »
0
esatto proprio quello che voglio realizzare!! allo star dell'applicazione controllo eventuali aggiornamenti se si è collegati alla rete! :)
Maverik @ Google Play Store

Offline bart

  • Utente junior
  • **
  • Post: 133
  • Respect: 0
    • highlanderteam
    • BBartsv
    • Mostra profilo
  • Dispositivo Android:
    samsung galaxy tab
  • Play Store ID:
    barth
  • Sistema operativo:
    ubuntu 11.04,mac os leopard,windows7
Re:aggiorare db online
« Risposta #8 il: 02 Dicembre 2011, 10:51:15 CET »
0
TI CONVIENE allora separare bene le cose per esempio crei una classe x il collegamento al db e li crei un metodo che ritorna una lista e nella classe primaria ti connetti al db locale e conti gli elementi e lo confronti con la size() della lista e s è magg o minori aggiorni il db locale!spero di esserti utile

Offline maverik1408

  • Utente junior
  • **
  • Post: 100
  • Respect: +1
    • Mostra profilo
    • MaverikApps
  • Dispositivo Android:
    NEXUS 5
  • Play Store ID:
    Maverik
Re:aggiorare db online
« Risposta #9 il: 02 Dicembre 2011, 13:22:54 CET »
0
ho già una classe DB dove nell'activity principale mi collego e apro il db e carico i dati in modo tale che poi li ho già tutti pronti durante l'esecuzione!!

ora devo fare una classe che si collega al db on line e mi restituisce i nuovi dati! :)
Maverik @ Google Play Store

Offline bart

  • Utente junior
  • **
  • Post: 133
  • Respect: 0
    • highlanderteam
    • BBartsv
    • Mostra profilo
  • Dispositivo Android:
    samsung galaxy tab
  • Play Store ID:
    barth
  • Sistema operativo:
    ubuntu 11.04,mac os leopard,windows7
Re:aggiorare db online
« Risposta #10 il: 02 Dicembre 2011, 16:03:43 CET »
0
esatto se non riesci mandami una mail con il file zippato 8-)

Offline maverik1408

  • Utente junior
  • **
  • Post: 100
  • Respect: +1
    • Mostra profilo
    • MaverikApps
  • Dispositivo Android:
    NEXUS 5
  • Play Store ID:
    Maverik
Re:aggiorare db online
« Risposta #11 il: 09 Dicembre 2011, 15:54:59 CET »
0
eccomi di nuovo con alcune prove ...

questa è la chiamata tramite httppost al sito web ..

Codice: [Seleziona]

        // Create a new HttpClient and Post Header
        HttpClient httpclient = new DefaultHttpClient();
        HttpPost httppost = new HttpPost("http://www.miosito.it/sudoku.aspx");

        try {
            // Add your data
            List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
            nameValuePairs.add(new BasicNameValuePair("dbVersion", "1"));
            httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));

            // Execute HTTP Post Request
            HttpResponse response = httpclient.execute(httppost);
            String line = "";
            String testo = "";
            BufferedReader rd = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));
            while ((line = rd.readLine()) != null)
                    testo += line;
            rd.close();
           
           
        } catch (ClientProtocolException e) {
            // TODO Auto-generated catch block
        } catch (IOException e) {
            // TODO Auto-generated catch block
        }


nel sito web la pagina deve ritornare i dati solamente tramite "RESPONSE.WRITE" ... come ritorno le righe contenute nel db???
le devo serializzare in una stringa e poi splittare dall'app???

grazieee
Maverik @ Google Play Store

Offline bart

  • Utente junior
  • **
  • Post: 133
  • Respect: 0
    • highlanderteam
    • BBartsv
    • Mostra profilo
  • Dispositivo Android:
    samsung galaxy tab
  • Play Store ID:
    barth
  • Sistema operativo:
    ubuntu 11.04,mac os leopard,windows7
Re:aggiorare db online
« Risposta #12 il: 09 Dicembre 2011, 22:02:17 CET »
0
ciao io di solito uso il formato json,comunque puoi metterla in una stringa il risultato e poi nell'app fai lo split

Offline maverik1408

  • Utente junior
  • **
  • Post: 100
  • Respect: +1
    • Mostra profilo
    • MaverikApps
  • Dispositivo Android:
    NEXUS 5
  • Play Store ID:
    Maverik
Re:aggiorare db online
« Risposta #13 il: 11 Dicembre 2011, 08:51:28 CET »
0
ookk sto facendo il JSON! :D

grazieee
Maverik @ Google Play Store

Offline bart

  • Utente junior
  • **
  • Post: 133
  • Respect: 0
    • highlanderteam
    • BBartsv
    • Mostra profilo
  • Dispositivo Android:
    samsung galaxy tab
  • Play Store ID:
    barth
  • Sistema operativo:
    ubuntu 11.04,mac os leopard,windows7
Re:aggiorare db online
« Risposta #14 il: 11 Dicembre 2011, 12:28:52 CET »
0
ciao in php quando fai una select per farti ritornare le colenne della select in formato json ti conviene fare:
Codice: [Seleziona]
while($e=mysql_fetch_assoc($res))
        $output[]=$e;
print(json_encode($output));