Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12

Discussione: refresh su form

  1. #1

    refresh su form

    Ciao,
    Io ho un form che a metà circa carica le solite select dinamiche con comune e provincia. Al change di provincie pero aviene una refresh e quindi tutto cio che e stato scritto prima nel form viene cancellato. In questo caso non posso far scegliere il comune prima di tutto quindi devo ripassare tutti i valori dei dati precedentemente inseriti e poi metterli nei value="" delle varie caselle. Come faccio a prendere i valori precedenti?

    Grazie in anticipo

  2. #2
    nessuno?

  3. #3
    non c'e proprio nessuno?

  4. #4
    proprio proprio nessuno???

  5. #5
    per popolare le select in base a scelte di altre select puoi utilizzare javascript che non richiede il refresh della pagina...


  6. #6
    uso javascript:

    e su un onchange passo la variabile con una window.location.href alla stessa pagina dove nell'indirizzo metto ? variabile= this.selected.index

  7. #7
    Codice PHP:
    echo "Provincia: <select name=\"provincia\" onChange=\"var prova=this.options[this.selectedIndex].value; window.location.href='";
    if(
    $ricerca!=1)    
        echo 
    "gestionale.php?pag=form_inserisci_clienti&prov='+prova\";>";
    else
        echo 
    "form_inserisci_clienti.php?&tipo=$tipo&dataf=$dataf&rowf=$rowf&id_agente=$id_agente&ora_min=$ora_min&ricerca=$ricerca&prov='+prova\";>";
    $lista_provincie=mysql_query("SELECT id, nome_provincia FROM ind_province");
    echo 
    "<option value=\"-1\">Provincie</option>";
    while(
    $risposta_lista_provincie=mysql_fetch_array($lista_provincie)){
    if(
    $prov!=NULL AND $prov==$risposta_lista_provincie[id])
        echo 
    "<option value=\"$risposta_lista_provincie[id]\" selected=\"selected\">$risposta_lista_provincie[nome_provincia]</option>";
    else
        echo 
    "<option value=\"$risposta_lista_provincie[id]\">$risposta_lista_provincie[nome_provincia]</option>";
    }
    echo 
    "</select>
    "

    ecco il codice e poi in base al valore di prov sul refresh genero un'altra select con i comuni

  8. #8
    mh.. per ovviare il problema potresti fare con un'innerhtml sempre in javascript (praticamente usando ajax) senza mai ricaricare la pagina

    della serie prendi la select dove selezioni la provincia e la metti dentro un div e poi dentro il div vai a riscrivere la select giusta come ti pare a te

    questa è una soluzione.. se vuoi qualcosa di più dettagliato fa sapere

  9. #9
    piu che altro non conosco il javascript tanto e cercavo magari se riuscivi a dirmi qlksa del tipo onkeypress dentro le input type che quando scrivi nella text si memorizza il contenuto in una variabile che posso passare con il ? quando faccio il refresh

  10. #10
    allora.. guarda.. fai così.. per ogni tag del form fai così molto semplicemente

    es:
    Codice PHP:
    <form name="ciccio" id="ciccio" method="post" action="<?=$_SERVER['PHP_SELF']; ?>">
      <input type="text" value="<?=$_POST['nome']; ?>" name="nome">
      <input type="text" value="<?=$_POST['cognome']; ?>" name="cognome">
      <select name="provincia" onchange="submit();">
        <option value="<?=$idprov1?>"><?=$prov1?></option>
        ... ecc...
      </select>
      <?php
      
    if (trim($_POST['provincia'])) {
        
    // Fai la lista come ti pare a te :)
      
    }
      <
    select name="citta">
        <?
    php // Qui gli fai stampare la lista ?>
        <option value="<?=$idcitta?>"><?$citta?></option>
      <input type="submit" value="continua">
    </form>
    praticamente gli dai lo stesso nome alla variabile php e tutte le volte che gli fai un submit alla pagina lui te la ricrea con gli stessi valori di prima perchè se li porta dietro

    spero di essere stato chiaro

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.