Lo script sottostante serve a spostare dei dati da una tabella a un'altra. La funzione unix_timestamp prende i dati da un campo datetime e li converte in formato timestamp.
Non capisco perchè lo script inserisce solo alcuni record nella nuova tabella, mentre per altri restituisce l'errore specificato da IF. Non è che come al solito anzichè pensare al php è meglio che vada a dormire?
Grazie in anticipo per i suggerimenti!
# include il file esterno
include ("conn_m_inc.php");
# funzione per i caratteri speciali
function strip_it($str) {
$str=urldecode($str);
$str=stripslashes($str);
$str=htmlspecialchars($str);
return($str);
}
# seleziono i dati dalla prima tabella
$sql = mysql_query("SELECT gb_id, gb_name, gb_cosa, gb_message, UNIX_TIMESTAMP(gb_timestamp) as time, gb_user5 FROM envo_envoGB_GB ORDER BY gb_id");
# ciclo per l'inserimento nella seconda tabella
while ($riga = mysql_fetch_array($sql))
{
$gb_id=strip_it($gb_id);
$time=strip_it($time);
$gb_user5=strip_it($gb_user5);
$gb_name=strip_it($gb_name);
$gb_cosa=strip_it($gb_cosa);
$gb_message=strip_it($gb_message);
$gb_id=$riga["gb_id"];
$time=$riga["time"];
$gb_user5=$riga["$gb_user5"];
$gb_name=$riga["gb_name"];
$gb_cosa=$riga["gb_cosa"];
$gb_message=$riga["gb_message"];
$res=mysql_query("INSERT INTO envo_textnews VALUES ('$gb_id', '$time', '$gb_user5', '$gb_cosa', '$gb_message', '$gb_name')");
# condizione per monitorare l'andamento dell'inserimento dati
if(!$res)
{
echo " $gb_id - Error in transfer!
\n";
} else {echo "Variables Transfered!
\n";}
}