- Home
- Categorie
- Coding e Sistemistica
- PHP
- Recordset In Php
-
Recordset In Php
ho il seguente problema: devo popolare una tabella mysql (storica)prendendo i dati da una altra tabella mysql (attuale). Per farlo ho implementato il sequente codice:
[php]
while(($array2= mysql_fetch_array($Recordset2))){
while (($array1= mysql_fetch_array($Recordset1))){
if(($array2['dt_nbr_serie']) != ($array1['dt_nbr_serie']) && ( empty($array2['dt_data_add']))) {
$query_inser2=( "INSERT INTO storica(dt_nbr_bam,dt_data_bam,dt_provenienza,dt_reg_mnemo,dtmagazzino,dt_sett_in,dt_bolla_car,dt_data_bolla,dt_nbr_voce,dt_codice_art,dt_descriz,dt_nome_cent,dt_nbr_serie,dt_nbr_ril_guas,dt_centrale,dt_data_add,dt_con_rimpiazzo,stato) VALUES('$array2[dt_nbr_bam]','$array2[dt_data_bam]','$array2[dt_provenienza]','$array2[dt_reg_mnemo]','$array2[dtmagazzino]','$array2[dt_reg_mnemo]','$array2[dt_sett_in]','$array2[dt_bolla_car]','$array2[dt_nbr_voce]','$array2[dt_codice_art]','$array2[dt_descriz]','$array2[dt_nome_cent]','$array2[dt_nbr_serie]','$array2[dt_nbr_ril_guas]','$array2[dt_centrale]','$array2[dt_data_add]','$array2[dt_con_rimpiazzo]','A')");
$inser1= mysql_query($query_inser2,$miaconnessione) or die(mysql_error());}
else if (($array2['dt_nbr_serie']) != ($array1['dt_nbr_serie']) || ( !empty($array2['dt_data_add']))){
$query_inser2=( "INSERT INTO storica(dt_nbr_bam,dt_data_bam,dt_provenienza,dt_reg_mnemo,dtmagazzino,dt_sett_in,dt_bolla_car,dt_data_bolla,dt_nbr_voce,dt_codice_art,dt_descriz,dt_nome_cent,dt_nbr_serie,dt_nbr_ril_guas,dt_centrale,dt_data_add,dt_con_rimpiazzo,stato) VALUES('$array2[dt_nbr_bam]','$array2[dt_data_bam]','$array2[dt_provenienza]','$array2[dt_reg_mnemo]','$array2[dtmagazzino]','$array2[dt_reg_mnemo]','$array2[dt_sett_in]','$array2[dt_bolla_car]','$array2[dt_nbr_voce]','$array2[dt_codice_art]','$array2[dt_descriz]','$array2[dt_nome_cent]','$array2[dt_nbr_serie]','$array2[dt_nbr_ril_guas]','$array2[dt_centrale]','$array2[dt_data_add]','$array2[dt_con_rimpiazzo]','U')");
$inser1= mysql_query($query_inser2,$miaconnessione) or die(mysql_error());}
}
mysql_data_seek($Recordset1,0);
}
//mysql_data_seek($Recordset2,0);
mysql_data_seek($Recordset1,1);
[/php]tutto va bene alla prima esecuzione della pagina web, ma se ricarico la pagina con il pulsante aggiorna in explorer i record della tabella storica si moltiplicano.
come posso fare per risolvere il problema??? non riesco a capire??? se è possibile qualcuno mi dia una mano. ciao e grazie
-
Puoi fare così:
-
imposta una variabile di sessione con la data dell'esecuzione dell'ultima query di inserimento
-
all'inizio del ciclo while inserisci una if in cui si analizz la variabile di sessione: se hai eseguito la query da pochi secondi, salta gli inserimenti, se invece non è impostata, fai eseguire le query.
Se ques
-
-
@piccolosocrate said:
Puoi fare così:
-
imposta una variabile di sessione con la data dell'esecuzione dell'ultima query di inserimento
-
all'inizio del ciclo while inserisci una if in cui si analizz la variabile di sessione: se hai eseguito la query da pochi secondi, salta gli inserimenti, se invece non è impostata, fai eseguire le query.
Se ques
avevo gia pensato ad una soluzione del genere ma perche dovrei farlo?? alla fine e solo un aggiornamento di una pagina dovrebbe rimanere sempre la stessa. e poi in termini di codice come dovrebbe essere scritto perche ho provato a farlo ma penso di averlo scritto in modo errato. se qualcuno puo modificare il mio codice mi farebbe un grande piacere. ciao e grazie
-
-
non c'è un altro modo per risolvere il problema?? questo aggiornamento lo devo fare una volta a settimana quindi la variabile di sessione non mi aiuta. avete altri suggerimenti?? ciao grazie