Debbo leggere il contenuto di una tabella dbf e popolare con il suo contenuto una tabella in mysql. Questo è il codice che uso:
<?
$dominio="localhost";
$user="root";
$pwd="";
$db="montemarciano";
$db_con = mysql_connect($dominio, $user, $pwd);
mysql_select_db("$db",$db_con);
$id=dbase_open("libri.dbf",0);
$last=dbase_numrecords($id);
$nf = dbase_numfields($id);
for ($campi=0; $campi<$nf-1; $campi++) {
$valori .= "'$"."ar[$campi]', ";
}
$valori .= "'$"."ar[$campi]'";
//echo "I valori sono : $valori"."
\n";
for ($i=1; $i < $last; $i++) {
$ar=dbase_get_record($id, $i);
// aggiungi mysql insert
$sql = "INSERT INTO libri2 VALUES ($valori)";
echo "$sql
\n";
$result = mysql_query($sql,$db_con) or die ("non ho potuto inserire nulla");
}
if ($result) {
echo "Il DB è stato popolato da $last record";
} else {
echo "Non ho potuto inserire record";
}
dbase_close($id);
?>
Il valore della variabile $valori è corretta ma la query non va a buo fine. Se in VALUES inserisco a mano il contenuto di $valori tutto funziona, non capisco il perchè, me lo sapete per favore spiegare?
C'è la possibilità da un file dbf di leggere il nome e il tipo di dati dei campi? Ciò mi permetterebbe di automatizzare completamente la costuzione della tabella in mysql, mi sapete indicaare un articolo esplicativo? Grazie