script che legga un datafeed

follettinux

Nuovo Utente
2 Nov 2011
21
0
0
Ho creato questo script per poter esportare dei dati in automatico da un database per andarlo a leggere da un altro dominio esterno. Lo script crea una sorta di datafeed dei prodotti:

Codice:
<?php
 //Connessione al Database


include('config.php');

$link = mysql_connect($host, $user, $pass) or die("Can not connect." . mysql_error()); /* usa i dati forniti per connetterti a MySql, se impossibile interrompi */

mysql_select_db($db) or die("Can not connect."); // seleziona il db desiderato oppure interrompi 


 //Fine Connessione
 
 //Seleziono la tabella del quale voglio effettuare l'esportazione CSV
 $tabella = "nome_tabella";
 
 //Recupero le informazioni relative alla data tabella
 $info = mysql_list_fields("$db",$tabella) or die ("Errore nella selezione del batabase");

 //Creo un array dove inserirò i vari nomi dei campi
 $arrayNomi = array(CAMPO1, CAMPO2,CAMPO3);

 //Concatena tutti i campi valorizzati del db, separandoli con il ;
  $clausolaSelect  = "select CONCAT_WS(';',". implode(",",$arrayNomi).",'<br>') ";
  $clausolaSelect .= " as VALORI from $tabella order by VALORI";
  $info = mysql_query($clausolaSelect) or die(mysql_error());
    //Esegue la Stampa di tutti i risultati
    while (list($result) = mysql_fetch_array($info)) {
        print "$result\n";
    }

?>

Ora però mi serve uno script da mettere nell'altro dominio che avrà il compito di leggere il datafeed del primo dominio e uploadare i dati nel database del secondo dominio...

Chi potrebbe aiutarmi con uno script esempio?
 
Per prima cosa cambia il ciclo while così:
PHP:
$data = array();

while ($row = mysql_fetch_array($info)) {
    $data[] = $row;
}

echo serialize($data);
Nello script che importa i dati ti basterà fare:
PHP:
// devi ovviamente cambiare l'URL
$contents = file_get_contents('http://www.example.com/api.php');

$data = unserialize($contents);

// ora $data è un array multidimensionale contenente tutti i record recuperati
// dalla tabella del database, puoi farci quello che vuoi

print_r($data);
 
se seguo questo metodo devo avere "allow_url_include" e "allow_url_open" in "true" nel secondo dominio?
 
non printa nulla :(
pagina bianca!
il datafeed assume l'aspetto di prima radoppiando la riga con una stringa all'inizio di ogni riga e qualcosa in mezzo...
Codice:
a:8:{i:0;a:2:{i:0;s:45:" campo1;campo2;campo3;";s:6:"VALORI";s:45:"campo1;campo2;campo3;
 
Ultima modifica:
ora nel 2° dominio mi compare il datafeed che ha mandato il file del 1° dominio dentro questa stringa:
Codice:
string(1085) "
[...datafeed...]
" bool(false)
 

Discussioni simili