Problema riapertura pagina

marcoint

Utente Attivo
8 Gen 2014
58
0
0
Salve ragazzi, allora io ho un form da cui invio dato ad una pagina php. Quella pagina estraendo dati dal database crea una tabella e fin qui tutto bene. Ora io su questa tabella ( che per informazione offre dei pacchetti offerta ) ho un campo link che indirizza alla pagina .HTML che mi serve. Adesso vorrei mettere un link torna alla tabella eventi. Ma come faccio? Cioè come faccio a mantenere quei parametri che ho inviato dal form, senza richiamare di nuovo la pagina del form? Se non sono stato chiaro scrivetemelo qui sotto, grazie millee :)
 

Monital

Utente Attivo
15 Apr 2009
778
2
18
Credo lo puoi fare sia con le sessioni che con i le variabili GET(io lof arei cosi), se posti almeno il form e quale dato usi per l'estrazione al database posso provare ad aiutarti
 

marcoint

Utente Attivo
8 Gen 2014
58
0
0
Si allora è un form che semplicemente seleziona due date attraverso tre select:
HTML:
<!DOCTYPE html>
<html>
<head><title>form</title>
<script type="text/javascript">
window.onload = function(){
  var formID = 'dateEventi'; // Qui inserisci l'id del tuo form
  var url = 'sassiesecoli.altervista.org' // Qui inserisci l'url della pagina che vuoi caricare

  document.getElementById(formID).onsubmit = function(){

     var iframe = document.createElement('iframe'); // Creo l'iframe
     iframe.setAttribute('src',url);  // Setto il valore dell'url dell'iframe con quello inserito sopra
     document.body.appendChild(iframe); // Inserisco l'iframe alla fine del body. 

     return false;  // Blocca il submit del form per non far aprire la pagina 
  }
}
</script>
</head>
<body>
<form name=dateEventi; method="GET" action="prova.php" target="_self">
<!--A PARTIRE DA-->
DA
<select name="giornoDA">
   <option value="01">01</option>
   <option value="02">02  </option>
   <option value="03">03 </option>
   <option value="04">04  </option>
   <option value="05">05  </option>
   <option value="06">06</option>
   <option value="07">07  </option>
   <option value="08">08 </option>
   <option value="09">09  </option>
   <option value="10">10  </option>
   <option value="11">11</option>
   <option value="12">12  </option>
   <option value="13">13 </option>
   <option value="14">14  </option>
   <option value="15">15  </option>
   <option value="16">16</option>
   <option value="17">17  </option>
   <option value="18">18 </option>
   <option value="19">19  </option>
   <option value="20">20  </option>
   <option value="21">21</option>
   <option value="22">22  </option>
   <option value="23">23 </option>
   <option value="24">24  </option>
   <option value="25">25  </option>
   <option value="26">26</option>
   <option value="27">27  </option>
   <option value="28">28 </option>
   <option value="29">29  </option>
   <option value="30" >30  </option>
   </select>
  
  <select name="meseDA">
   <option value="01">01</option>
   <option value="02">02  </option>
   <option value="03">03 </option>
   <option value="04">04  </option>
   <option value="05">05  </option>
   <option value="06">06</option>
   <option value="07">07  </option>
   <option value="08">08 </option>
   <option value="09">09  </option>
   <option value="10">10  </option>
   <option value="11">11  </option>
   <option value="12">12  </option>
  </select>
   
   <select name="annoDA">
   <option value="2013">2013</option>
   <option value="2014">2014  </option>
   <option value="2015">2015 </option>
  </select>
  <br>
  <!--FINO A-->
  A
  <select name="giornoFINO">
   <option value="01">01</option>
   <option value="02">02  </option>
   <option value="03">03 </option>
   <option value="04">04  </option>
   <option value="05">05  </option>
   <option value="06">06</option>
   <option value="07">07  </option>
   <option value="08">08 </option>
   <option value="09">09  </option>
   <option value="10">10  </option>
   <option value="11">11</option>
   <option value="12">12  </option>
   <option value="13">13 </option>
   <option value="14">14  </option>
   <option value="15">15  </option>
   <option value="16">16</option>
   <option value="17">17  </option>
   <option value="18">18 </option>
   <option value="19">19  </option>
   <option value="20">20  </option>
   <option value="21">21</option>
   <option value="22">22  </option>
   <option value="23">23 </option>
   <option value="24">24  </option>
   <option value="25">25  </option>
   <option value="26">26</option>
   <option value="27">27  </option>
   <option value="28">28 </option>
   <option value="29">29  </option>
   <option value="30" >30  </option>
   </select>
  <select name="meseFINO">
   <option value="01">01</option>
   <option value="02">02  </option>
   <option value="03">03 </option>
   <option value="04">04  </option>
   <option value="05">05  </option>
   <option value="06">06</option>
   <option value="07">07  </option>
   <option value="08">08 </option>
   <option value="09">09  </option>
   <option value="10">10  </option>
   <option value="11">11  </option>
   <option value="12">12  </option>
  </select>
 
    <select name="annoFINO">
   <option value="2013">2013</option>
   <option value="2014">2014  </option>
   <option value="2015">2015 </option>
  </select>
<input type=submit value=Invia>
</form>
</body>
</html>

Lascia stare la parte javascript che è un tentativo fallito miseramente di far aprire la prova.php nel div main della mia pagina. Comunque ora dalla mia prova.php dove faccio la query e stampo una tabella, come ho già detto, dopo essere andato su un'altra pagina .html vorrei avere un tasto torna indietro, che ritorni alla tabella stampata precedentemente e quindi con le date scelte.
 

flameseeker

Utente Attivo
27 Nov 2013
699
0
0
Innanzitutto, la pagina in cui hai il form è una pagina .php, ho capito bene ? Se il tuo form è in una pagina .html allora devi convertirla a .php.
Come inizio ti suggerirei di semplificarti la vita grazie ai contatori, così da generare in automatico quei noiosi menù a tendina ;)

Secondariamente, occorre installare un controllo preventivo su ogni tag option.
Questo controllo servirà a "ricordare" la scelta col tastino per tornare indietro e sostanzialmente lo farà perché invieremo una copia di questi dati indietro alla pagina cliccando sul tastino, quindi dobbiamo assicurarci di selezionare quelli giusti nelle varie tendine.

Quando, durante il ciclo, un dato tornato indietro viene riconosciuto in una tendina, gli verrà associato l'attributo selected, il quale gli permetterà di risultare come scelta preselezionata.


Il risultato del codice riguardante il form dovrebbe essere questo:

PHP:
<!DOCTYPE html>
<html>
<head><title>form</title>
<script type="text/javascript">
window.onload = function(){
  var formID = 'dateEventi'; // Qui inserisci l'id del tuo form
  var url = 'sassiesecoli.altervista.org' // Qui inserisci l'url della pagina che vuoi caricare

  document.getElementById(formID).onsubmit = function(){

     var iframe = document.createElement('iframe'); // Creo l'iframe
     iframe.setAttribute('src',url);  // Setto il valore dell'url dell'iframe con quello inserito sopra
     document.body.appendChild(iframe); // Inserisco l'iframe alla fine del body. 

     return false;  // Blocca il submit del form per non far aprire la pagina 
  }
}
</script>
</head>
<body>
<!-- occhio anche al name qui -->
<form name="dateEventi" method="GET" action="prova.php" target="_self">
<!--A PARTIRE DA-->
DA
<select name="giornoDA">
<?php for ($i = 1; $i <= 31; ++$i): 
            $giorno = str_pad($i, 2, '0');
?>
   <option value="<?php echo $giorno; ?>"<?php echo !empty($_GET['giornoDA'])&&$giorno==$_GET['giornoDA']? ' selected':''; ?>><?php echo $giorno; ?></option>
<?php endfor; ?>
   </select>
  
  <select name="meseDA">
<?php for ($i = 1; $i <= 12; ++$i): 
            $mese = str_pad($i, 2, '0');
?>
   <option value="<?php echo $mese; ?>"<?php echo !empty($_GET['meseDA'])&&$mese==$_GET['meseDA']? ' selected':''; ?>><?php echo $mese; ?></option>
<?php endfor; ?>
  </select>
   
   <select name="annoDA">
<?php for ($i = date('Y', strtotime('2013-01-01')); $i <= date('Y'); ++$i): ?>
   <option value="<?php echo $i; ?>"<?php echo !empty($_GET['annoDA'])&&$i==$_GET['annoDA']? ' selected':''; ?>><?php echo $i; ?></option>
<?php endfor; ?>
  </select>
  <br>
  <!--FINO A-->
  A
  <select name="giornoFINO">
<?php for ($i = 1; $i <= 31; ++$i): 
            $giorno = str_pad($i, 2, '0');
?>
   <option value="<?php echo $giorno; ?>"<?php echo !empty($_GET['giornoFINO'])&&$giorno==$_GET['giornoFINO']? ' selected':''; ?>><?php echo $giorno; ?></option>
<?php endfor; ?>
   </select>
  <select name="meseFINO">
<?php for ($i = 1; $i <= 12; ++$i): 
            $mese = str_pad($i, 2, '0');
?>
   <option value="<?php echo $mese; ?>"<?php echo !empty($_GET['meseFINO'])&&$mese==$_GET['meseFINO']? ' selected':''; ?>><?php echo $mese; ?></option>
<?php endfor; ?>
  </select>
 
    <select name="annoFINO">
<?php for ($i = date('Y', strtotime('2013-01-01')); $i <= date('Y'); ++$i): ?>
   <option value="<?php echo $i; ?>"<?php echo !empty($_GET['annoFINO'])&&$i==$_GET['annoFINO']? ' selected':''; ?>><?php echo $i; ?></option>
<?php endfor; ?>
  </select>
<input type=submit value=Invia>
</form>
</body>
</html>


In prova.php invece dovresti poter realizzare il tastino per tornare indietro in questo modo:
PHP:
<a href="nomedellapaginaform.php?<?php echo $_SERVER['QUERY_STRING']; ?>">Torna Indietro</a>

$_SERVER['QUERY_STRING'] non fa altro che raccogliere tutti i parametri presente nell'url e raggupparli già pronti per comporre una qualsiasi richiesta http, quindi in buona sostanza sta prendendo i dati del form che hai appena inviato e li ha preparati per comunicarli alla pagina precedente grazie a quel link.


Fammi sapere se qualcosa non ti è chiaro o se non riesci ;)
 

marcoint

Utente Attivo
8 Gen 2014
58
0
0
Perfetto e questo è da prova.php a form.php. Adesso quello che mi serviva è tornare indietro da pagina.html. Mi spiego. Io ho form.php a cui è collegato prova.php che genera una tabella ( attraverso la query ) con dei link. Quei link sono link che collegano a pagine .html. Ora da è da quelle pagine .html che vorrei un tastino torna indietro che ritornasse alla tabella .php. Si può fare?
 

marcoint

Utente Attivo
8 Gen 2014
58
0
0
Provando il tuo codice c'è qualcosa che non va. Nella selezione mi sceglie i giorni come 10-20-30-40... e non come 01 02 03 04. Mi sà che c'è qualcosa che non va.
 

flameseeker

Utente Attivo
27 Nov 2013
699
0
0
Provando il tuo codice c'è qualcosa che non va. Nella selezione mi sceglie i giorni come 10-20-30-40... e non come 01 02 03 04. Mi sà che c'è qualcosa che non va.

Nella funzione str_pad ho dimenticato un quarto parametro, che deve assumere il valore STR_PAD_LEFT, così:
PHP:
$giorno = str_pad($i, 2, '0', STR_PAD_LEFT);

Aggiornali tutti così.


Quanto al tasto nella pagina .html il concetto è lo stesso, devi trasformarla in php, includere il codice del tastino e spedirgli i dati in get.
 

marcoint

Utente Attivo
8 Gen 2014
58
0
0
ok così funziona il form. Dopo provo il torna indietro, avrei prima bisogno della chiamata ajax per aprirlo.
 
Discussioni simili
Autore Titolo Forum Risposte Data
I Sto progettando nuovi siti utilizzando bootstrap e devo dire funziona bene, l'unico problema e la maschera -moz- HTML e CSS 0
K Problema form update PHP 2
O problema con dvr dahua xvr5116 IP Cam e Videosorveglianza 0
S Problema nel ciclare un json Javascript 0
G Problema con Xampp Web Server 1
andrea barletta Problema con miniature comandi Photoshop 0
I problema con alice Posta Elettronica 0
K Problema Inner join PHP 1
F firefox problema http Linux e Software 0
N Problema con position absolute e overflow HTML e CSS 4
E Problema jquery Success jQuery 2
L Problema con inner join PHP 11
K [php] Problema con inner join PHP 4
E problema selezione sfumata Photoshop 2
K [PHP] Problema con variabili concatenate. PHP 1
A Problema filtro fluidifica Photoshop Photoshop 1
H Problema Bordi Scontorno Photoshop 1
O problema con query PHP 4
R Problema installazione Realtek WiFi USB rtl8821 Reti LAN e Wireless 0
I problema con 2 account Posta Elettronica 1
L problema collegamento file css con html HTML e CSS 1
Y Problema percorso file in rete PHP 1
N Problema SEO "L'URL non si trova su Google" SEO e Posizionamento 4
E Problema accesso a file con app sviluppata con MIT APP INVENTOR 2 Sviluppo app per Android 0
P Problema acquisizione clienti Webdesign e Grafica 1
F NetBeans problema creazione progetto Java Windows e Software 0
M Problema con Try Catch PHP 0
C problema seo + cerco esperto SEO e Posizionamento 11
Sergio Unia Problema con gli eventi del mouse su una data table: Javascript 2
T PROBLEMA CON SESSIONI PHP 3
A Problema, non so, di scale() o transform, oppure altro? HTML e CSS 0
T ALTRO PROBLEMA CON ARRAY PHP PHP 1
R problema con else PHP 0
T PROBLEMA CON ARRAY PHP 8
L problema con query select PHP 2
R Problema query con ricerca id numerico PHP 2
F Problema con risposta PHP 0
S problema con recupero dati tabella mysql PHP 2
Z Problema con il mio tp-l i nk Reti LAN e Wireless 1
I PROBLEMA: Sostituzione sito XAMPP E-Commerce 0
T problema data 30/11/-1 PHP 0
L Problema RAM con Tomcat 8 Apache 0
napuleone problema con sort e asort PHP 4
Y Problema incolonnamento tabella PHP 7
S problema salvataggio immagini Photoshop 0
Z Problema con INT MySQL PHP 1
Z Problema database MySQL con XAMPP PHP 0
M Problema con controllo form in real time jQuery 6
D problema php mysql PHP 1
D problema php mysql PHP 1

Discussioni simili