Mantenere scelte fatte in un form

navajo75

Utente Attivo
16 Mar 2012
103
1
18
Salve a tutti,

ho una pagina in cui c'è un form con delle select e dei campi di testo. L' action diquesto form manda ad un'altra pagina, in cui dó la possibilità all'utente di tornare indetro, qualora le scelte adoperate non lo soddisfacessero.
Mandandolo indietro, vorrei che tornasse al form senza perdere le scelte precedentemente effettuate.
Vorrei ottenere questo risultato, utilizzando Php, ma non ho idea di come fare. Forse con le sessioni? Se si, potreste darmi qualche spunto per favore?

Grazie,
Marco
 

Nefyt

Utente Attivo
17 Apr 2012
1.102
0
0
Fare una semplice richiesta in ajax alla pagina di controllo quindi senza usufruire di refresh o torna indietro?
 

navajo75

Utente Attivo
16 Mar 2012
103
1
18
Che sia Ajax, Javacript o Php non importa.
Posso pensare di volerlo fare in Php solo per un motovo: non dipendere cioè dalle evoluzioni future dei vari browser.
Faccio un esempio. Per ottenere ciò che voglio, solitamente utilizzavo una comodissima funzioncina javascript (javascript:history.go(-1)).
Questa volta, non so perchè, con Safari, Chrome ed Opera funziona, mentre con IE e Mozilla no.
L'unica differenza questa volta, rispetto al solito, è che l'utente che riempie il form è giá in sessione, si è cioè giá loggato; ma non vedo cosa ci possa entrare.
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.041
149
63
PR
www.borgo-italia.it
ciao
devi usare le sessioni o i cookie (io preferisco le sessioni).
ricordati che se usi le sessioni la prima istruzione deve essere session_star(); che deve venire prima di qualsiasi output html
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
una comodissima funzioncina javascript (javascript:history.go(-1)).

strano che non ti funzioni :confused:

hai provato anche con history.back() ?

HTML:
<a href="javascript:javascript:history.back()">indietro</a>

e con la freccia del browser?
 

navajo75

Utente Attivo
16 Mar 2012
103
1
18
Si criric, ho provato anche con...

HTML:
javascript:history.back()

... e non funziona.

La cosa buffa è che i due browser che mi danno problemi, IE e Mozilla Firefox, lavorano tranquillamente con la funzioncina in questione, se creo un'altra form e non sto in sessione.
So che sembra assurdo ma è così, credimi.

Comunque ho risolto utilizzando le sessioni e dunque il minimo che possa fare è postare un pò di codice a beneficio di chi possa avere la mia stessa necessità.

Pagina atti.php

PHP:
  session_start();
  $quantita = $_SESSION['quantita'];
  $titolo = $_SESSION['titolo'];
HTML:
  <form name="form_acquisto" method="post" enctype="multipart/form-data" action="riepilogo.php">
    <div id="campo_colore_carta">
        <label>
          <select name="colorecarta" id="colorecarta">
            <option value="seleziona">Colore carta</option>
            <option value="Arachide" <?php if($_SESSION["colorecarta"] == "Arachide"){echo 'selected="selected"';}?>>Arachide</option>
            <option value="Arancio" <?php if($_SESSION["colorecarta"] == "Arancio"){echo 'selected="selected"';}?>>Arancio</option>
            <option value="Azzurro" <?php if($_SESSION["colorecarta"] == "Azzurro"){echo 'selected="selected"';}?>>Azzurro</option>
            <option value="Bianco" <?php if($_SESSION["colorecarta"] == "Bianco"){echo 'selected="selected"';}?>>Bianco</option>
            <option value="Giallo" <?php if($_SESSION["colorecarta"] == "Giallo"){echo 'selected="selected"';}?>>Giallo</option>
            <option value="Grigio" <?php if($_SESSION["colorecarta"] == "Grigio"){echo 'selected="selected"';}?>>Grigio</option>
            <option value="Rosa" <?php if($_SESSION["colorecarta"] == "Rosa"){echo 'selected="selected"';}?>>Rosa</option>
            <option value="Verde" <?php if($_SESSION["colorecarta"] == "Verde"){echo 'selected="selected"';}?>>Verde</option>
          </select>
       </label>
    </div>
   <?php unset($_SESSION['colorecarta']); ?>
    <div id="campo_titolo">
      <label>
         <input name="titolo" type="text" id="titolo" value="<?php echo $titolo; ?>"/>
      </label>
    </div>
    <?php unset($_SESSION['titolo']); ?>
  </form>

Pagina riepilogo.php
PHP:
  $quantita = $_POST['quantita'];
  $_SESSION['quantita'] = $quantita;
  $titolo= $_POST['titolo'];
  $_SESSION['titolo'] = $titolo;

P.S.: criric, se vuoi, sono interessato ad approfondire il discorso della funzioncina Javascript, poichè non mi va giù che non funzioni

Grazie a tutti per lo straordinario aiuto che ricevo ogni volta in questo bel forum.
Saluti,
Marco
 
Discussioni simili
Autore Titolo Forum Risposte Data
S mantenere le modifiche in un file php PHP 2
S [PHP] Come mantenere selezionato checkbox dopo aver cliccato submit PHP 7
A Mantenere la validazione reindirizzandoci su un secondo sito WEb. (ASP.NET) ASP.NET 0
I [Javascript] mantenere un bottone abilitato al refresh della pagina Javascript 1
M [PHP] Mantenere variabile con datagrid nella pagina 2 PHP 1
S [PHP] Mantenere selezionato il valore scelto dopo submit PHP 16
F Mantenere selezione immagine Javascript 1
M [PHP - MYSQL] Mantenere filtro query in tabelle paginate PHP 3
A Mantenere il focus su di una inputbox Javascript 1
G Freelancer: quanto costa aprire e mantenere la partita IVA? Discussioni Varie 3
N Ciclare sul DB e mantenere i dati PHP 3
P Mantenere valore di un form anche dopo refresh PHP 6
O Mantenere una sessione PHP 20
asevenx mantenere sessione login attiva anche in altre pagine PHP 8
Y mantenere sessione login? PHP 5
S Mantenere dati form in memoria PHP 29
A Mantenere le proporzioni Photoshop 3
L Convalidare form e mantenere il valore PHP 5
T Mantenere la posizione della pagina dopo postback PHP 1
E Flash mantenere un livello sempre animato Flash 1
J Come mantenere lo stato del "creator"? Javascript 0
S Ereditare e Mantenere Collegate Proprieta Flash 0
E Mantenere la stessa pagina cambianto il contenuto Classic ASP 1
opeth978 mantenere le informazioni PHP 19
C asp: mantenere l ostato 2 consigli Classic ASP 2
G Combo ... mantenere la selezione fatta Classic ASP 0
V [PHP] Memorizzare scelte select in db e leggerle PHP 6
asevenx [PHP] select dinamica con valori estratti dal database in base alle scelte precedenti PHP 3
C Classe Prenotazione con 2 scelte Java 2
minatore Un form completo di scelte PHP 3
N Scrivere in un DIV in base alle scelte fatte in due select Javascript 5
E checkbox e re indirizzamento delle scelte PHP 2
Z Come fare un sondaggio con 4 scelte collegato a mysql PHP 5
S archiviare le ricerche fatte con ADSENSE Google AdSense 0

Discussioni simili