• User

    Importare nel DB da tabella/CSV in Remoto (API)

    Ciao
    Non riesco proprio a capire come posso importare nel database mysql, un codice di questo tipo:

    XXX,1253890249578,0.86,565,0.86,583,0.86148,0.87078,0.86821

    o nel formato tabella:

    <table><tr><td>XXX</td><td>1253834856482</td><td>1.46</td><td>431</td>
    <td>1.46</td><td>483</td><td>1.46428</td><td>1.46715</td><td>1.46662</td></tr></table>

    con l'intestazione e fine dell' HTML !

    perchè se ho un file senza <html> <body> ecc... riesco a fare l'importazione.

    Questi dati li importo tramite un link con il metodo delle API.
    Sicuramente esiste un metodo alternativo, perchè io ho provato con la visualizzazione Iframe, file_get_contents ecc.. che mi visualizzano a schermo i dati ma poi non riesco ad importarli nel database...

    Come si usano le api??
    Grazie


  • User

    questo è un semplice esempio..
    se alposto di file_get_content(); uso un file csv, funziona.

    <?php

    Mi connetto al server Mysql e seleziono il DB da usare

    $db = @mysql_connect('localhost', 'root', '');
    @mysql_select_db('xxx');

    Creo una variabile con il file CSV Mda importare

    $CSVFile = file_get_contents('linkapi');

    Eseguo la query per l'importazione

    mysql_query("LOAD DATA LOCAL INFILE '" . $CSVFile . "' INTO TABLE xxx
    FIELDS TERMINATED BY ',' LINES TERMINATED BY '\r\n';");

    Chiudo la connessione al DB

    mysql_close($db);
    echo $CSVFile;
    ?>


  • User

    Bene, sono riuscito a fare quello che mi ero prefissato.
    in questo modo, qui importo i dati:

    <?php
    include 'simple_html_dom.php';

    // Scarica Dati
    $html = file_get_html('link...');

    $stringa = str_replace(" ", ";", $html);

    // Apri,Scrivi,Chiudi File
    $fp = fopen("resource.txt", "w");
    fwrite($fp,$stringa);
    fclose($fp);

    ?>

    e un'altro file esporto i dati nel database:

    <?php

    Mi connetto al server Mysql e seleziono il DB da usare

    $db = @mysql_connect('localhost', 'root', '');
    @mysql_select_db('xxx');

    Creo una variabile con il file CSV da importare

    $CSVFile = "resource.txt";

    Eseguo la query per l'importazione

    mysql_query("LOAD DATA LOCAL INFILE '" . $CSVFile . "' INTO TABLE xxx
    FIELDS TERMINATED BY ',' LINES TERMINATED BY ';';");

    Chiudo la connessione al DB

    mysql_close($db);

    // Visualizzo Dati
    //echo $;
    ?>

    Ora volevo suddividere i dati in 2 o più tabelle, ma non sò come muovermi.. cerco un modo per dividere i dati in più file o li divido in qualche modo tramite la query al database?