Salve a tutti ho un nuovo problema...cercher� di essere pi� dettagliato possibile...
Allora io ho 1 pagina chiamata
-arrivi.php
In questa pagina estraggo dei record da un database mysql e li inserisco in una tabella per mostrarli a video. In seguito tramite questo FORM
invio i dati ad un altra pagina:codice:<form method="post" onsubmit="return ValidaCheckbox();"> <input style="width:200px; height: 200px" align="left" type="submit" id="submit" name="submit" value="Arrivati"/>
-controlloarrivi.php
che inserir� i dati nel database e restituir� l'output dell'inserimento.
Per evitare doppi inserimenti nel database, a causa di up/refresh/back, utilizzo un token
FIN QUI TUTTO OK
A capo delle due pagine ho un index che include arrivi.php e controllo.php (COMMENTATA)
TUTTO FUNZIONA!codice:session_start(); //AVVIO SESSIONE if (isset($_POST['submit'])) { if($_SESSION['user_token'] == $_POST['user_token']) { // QUANDO VIENE PREMUTO IL TASTO SUBMIT E IL TOKEN RISULTA VALIDO unset($_SESSION['user_token']); //CANCELLO VECCHIA SESSIONE include_once('./script/token.php'); //CREO TOKEN PER LA SECONDA SESSIONE include_once('./arrivi.php'); //RICARICO ARRIVI.PHP include_once('./script/controlloarrivi.php'); //OUTPUT DEL PRIMO INSERIMENTO } else { header("location: ./index.php"); //ALTRIMENTI QUANDO IL TOKEN RISULTA SCADUTO RICARICA LA PRIMA PAGINA } } else{ include_once('./script/token.php'); //CREA TOKEN PER LA PRIMA SESSIONE include_once('./arrivi.php'); //MOSTRA LA TABELLA CON IL FORM E IL TASTO SUBMIT }
Per� ho un problema: Ogni volta che premo il tasto submit, arrivi.php, non viene ricaricato e di conseguenza, nella tabella a video, restano ancora i record che sono gi� stati processati da controlloarrivi.php e che quindi non dovrebbero pi� comparire.
Leggendo un po in giro, per ricaricare parzialmente una pagina, dovrei usare jquery/ajax
Allora ho provato in questa maniera:
Ed ho risolto in parte.... adesso, al primo submit, la tabella viene ricaricata egregiamente ed ottengo l'output da controlloarrivi.php! Mentre la seconda volta che premo il tasto submit per poter effettuare una nuova operazione (senza aver aggiornato la pagina) scompare l'output del primo inserimento e purtroppo non avviene il nuovo inserimento (ovviamente non compare nemmeno il nuovo output).codice:session_start(); if (isset($_POST['submit'])) { if($_SESSION['user_token'] == $_POST['user_token']) { unset($_SESSION['user_token']); include_once('./script/token.php'); ?> <div id="div"></div> <?php include_once('./script/controlloarrivi.php'); } else { header("location: ./2.php"); } } else{ include_once('./script/token.php'); include_once('./arrivi.php'); } ?> <script> $(function(){ $("#div").load("arrivi.php"); }); </script>
Come potrei fare per far si che ci� avvenga? Se avete soluzioni alternative (ad esempio tramite iframe o altro) sono ben accette. Grazie

Rispondi quotando