+ Rispondi al messaggio
Visualizzazione dei risultati da 1 a 8 su 8

Recupero dati da tabella Mysql di Aruba

  1. #1
    Ciao a tutti.

    In Visual Basic .Net sto realizzando un programma che possa recuperare dati presenti su un database Mysql Aruba che successivamente saranno utilizzati per effettuare vari calcoli.

    Dato che Aruba non permette di effettuare collegamenti da esterno, ho pensato di affrontare la situazione in questo modo:
    1. da Visual Basic .Net, dopo aver selezionato il nome di una tabella presente sul database Mysql di Aruba, richiamo un file .PHP presente sul server Aruba;
    2. il file PHP presente su Aruba recupera il nome della tabella, estrae i dati e crea un file .txt contenente i dati appena estratti;
    3. da Visual Basic .Net recupero il file .txt e lo salvo sul mio notebook.

    Spiego il problema.

    Quando seleziono il nome di una tabella e clicco un bottone funziona tutto alla perfezione. Se, però, seleziono il nome di un altra tabella e clicco nuovamente il bottone mi vengono estratti i dati relativi alla prima tabella scelta. Ricliccando di nuovo il bottone senza cambiare il nome della tabella funziona.
    Secondo voi quale potrebbe essere il problema?
    Vi posto di seguito il codice Visual Basic .Net che ho scritto.
            Try
                    ' Recupero il nome del monitoraggio scelto e lo invio al file .PHP presente sul server Aruba
                    Dim Nome_Tabella As String = "nome_tabella=" & CB_Nome_Tab.Text
                    WebBrowser.Navigate("http://www.xxxxxxx.com/dati.php?" & Nome_Tab)
    
                    ' Metto in pausa il programma per 4 secondi
                    Thread.Sleep(4000)
    
                    ' Recupero il file di testo creato dal .PHP
                    Dim URL As String = "http://www.xxxxxxx.com/Dati.txt"
                    Dim Nome_File As String = "C:\Dati.txt"
    
                    Dim objWebClient As New System.Net.WebClient()
                    System.IO.File.WriteAllBytes(Nome_File, objWebClient.DownloadData(URL))
            Catch ex As Exception
    		MessageBox("Errore")
            End Try
    
    Ciao e grazie mille.

  2. #2
    L'avatar di _alka_
    _alka_ non è in linea Very Important Person
    Probabilmente legge dalla cache del server, oppure stai scaricando il file prima che sia completo (e se impiega più di quattro secondi?).

    Secondo me, la soluzione è errata: dovresti fare il download direttamente della pagina PHP, che lato server produce come risposta (invece di scriverla su un altro file) il testo da importare.

    Il doppio passaggio è del tutto superfluo.

    Ciao!
    ℹ️ Leggi di più su _alka_ ...

  3. #3
    Ciao alka, grazie mille per la risposta e scusa se non ho risposto subito.

    Sicuramente il problema è la cache del server. Proverò a seguire il tuo consiglio e quindi effettuare il download del file direttamente dal PHP.

    Spero di riuscire. Ciao.

  4. #4
    L'avatar di _alka_
    _alka_ non è in linea Very Important Person
    Quote Originariamente inviato da samurai.sette Visualizza il messaggio
    Sicuramente il problema è la cache del server. Proverò a seguire il tuo consiglio e quindi effettuare il download del file direttamente dal PHP.
    Non sono un esperto di PHP, ma non dovrebbe essere difficile: è sufficiente che tu scriva nel flusso di risposta della pagina quello che attualmente stai scrivendo nel file esterno. In poche parole, rispondi direttamente con i dati.

    Se proprio non ci riesci, puoi scrivere comunque il file (così modifichi meno il codice) ma restituirlo subito dopo come risposta. Vedi questo esempio.

    Il concetto è che la chiamata alla pagina deve produrre come risultato i dati che vuoi scaricare in risposta, poi può essere implementato come ti è più comodo.

    Ciao!
    ℹ️ Leggi di più su _alka_ ...

  5. #5
    L'avatar di SirJo
    SirJo non è in linea Scolaretto
    Io personalmente ho su Aruba un file PHP dove gli passo il comando SQL che deve eseguire e mi risponde con una stringa JSON.
    Posso quindi eseguire praticamente tutto quello che voglio (ovviamente il tutto protetto da password, checksum, https e via dicendo per evitare intrusioni).
    Eventualmente, per aumentare il livello di protezione, si possono fare vari file PHP ognuno con uno scopo ben preciso.

  6. #6
    Ciao a tutti e scusate se non ho risposto subito ma solo ora mi sono accorto dei vostri nuovi messaggi.

    (Per alka) Ho provato il consiglio che mi hai dato ma continua sempre con il solito "difetto"

    (Per SirJo) Ho letto con molto interesse la tua soluzione e la trovo molto interessante. Potresti riportare un piccolo esempio da cui poter prendere spunto? Te ne sarei molto grato.

    Ciao.

  7. #7
    L'avatar di SirJo
    SirJo non è in linea Scolaretto
    Dai un occhiata a questa discussione dalla quale iniziare a prendere spunto (il codice PHP lo trovi nel mio post #8), poi se hai bisogno di altro chiedi pure

    https://www.b4x.com/android/forum/th...u-aruba.62942/

    Non serve che usi WebBrowser, puoi usare il WebClient

  8. #8
    Ciao SirJo, ho dato una occhiata alla discussione che mi hai indicato e devo dire che è davvero molto interessante.

    Nei prossimi giorni comincerò a fare prove (per qualche giorno sarò molto impegnato a lavoro) e vedrò cosa riesco a combinare.

    Ciao e grazie mille, sei stato gentilissimo.

+ Rispondi al messaggio

Potrebbero interessarti anche ...

  1. Come estrarre dati da DataBase Aruba
    Da samurai.sette nel forum Visual Basic .Net
    Risposte: 7
    Ultimo Post: 21-12-2020, 16:29
  2. Risposte: 2
    Ultimo Post: 20-04-2014, 13:30
  3. Form recupero password da MySQL
    Da chasky nel forum PHP
    Risposte: 2
    Ultimo Post: 05-01-2007, 09:26
  4. Recupero dati
    Da ga306 nel forum Microsoft Windows
    Risposte: 3
    Ultimo Post: 05-01-2006, 21:22
  5. recupero dati
    Da nonultimo nel forum Microsoft Windows
    Risposte: 4
    Ultimo Post: 05-07-2005, 02:26