Visualizzazione dei risultati da 1 a 7 su 7

Discussione: form a più schermate

  1. #1

    form a più schermate

    Ciao a tutti.
    Devo fare un form di inserimento dati formato da 4 o 5 schermate.
    Mi chiedevo come passare le variabili da una schermata all'altra... le inserisco man mano nel database? e se uno non arriva alla schermata finale avrò un profilo non completo

    cosa mi consigliate?

    grazie mille!

  2. #2
    Ciao,

    credo ti convenga utilizzare le SESSIONI.
    CODENCODE \ Branding \ Design \ Marketing
    www.codencode.it

  3. #3
    a ok...
    mettiamo che nella prima schermata ho 13 variabili post... devo poi recuperarle nelle seconda per poi reinviarle... e cosi anche per le altre schermate?
    mamma mia viene fuori una cosa infinita!
    a meno che non possa usare un array come variabile di sessione e riempirlo a ogni schermata... non so come farlo tecnicamente, ma prima voglio sapere se a logica è giusto e se si può fare

    grazie!

  4. #4
    Ciao,
    si è corretto usare un array.

    Puoi recuperare i campi ad esempio:

    Codice PHP:
    $dati_form = array();
    $dati_form['nome'] = $_REQUEST['nome'];
    $dati_form['cognome'] = $_REQUEST['cognome']; 
    ecc.

    e poi lo salvi nella session:

    Codice PHP:
    $_SESSION['dati_form'] = $dati_form
    Ciao

  5. #5
    Considera che un utente, a metà della registrazione, potrebbe doversi allontanare dal pc o potrebbe andar giù la linea.

    Non vorrai mica obbligarlo a reinserire tutto, no? Questo è il modo migliore per perdere utenti. I profili incompleti, su web, sono una cosa normalissima, il concetto di integrità dei dati non si sposa perfettamente col web.

    Secondo me quindi all'utente va immediatamente assegnato (e spedito per email) un id che va memorizzato sul db con una bella commit in modo che non ci sia pericolo di perderlo e in modo che lui possa risalire al suo profilo e completarlo in un secondo momento.

    Da quel momento in poi, tutti i dati che inserisce, pagina per pagina o anche pagine incomplete, vanno memorizzati sul db.

    Quando tutti i dati obbligatori sono stati inseriti si accende un flag che indica che quel profilo è completo e operativo.

    Se poi vuoi fare pulizia, potresti, ogni settimana, lanciare un processino di cancellazione dei profili incompleti più vecchi di tre mesi.

    Tutto questo si chiama Client Care: sei tu che devi adeguarti alle esigenze dei tuoi utenti, non il contrario.

    Ciao
    La democrazia rappresentativa ha fatto il suo tempo, è ora di passare alla democrazia diretta.
    www.beppegrillo.it

  6. #6
    mi hanno chiesto di fare una cosa come questa LINK (per accedere al form andate in fondo alla pagina )
    secondo voi è fatta con le session o con il metodo di Noncelafaccio+ ?
    grazie!

  7. #7
    Personalmente non ho dubbi a consigliarti l'utilizzzo delle session.
    E'perfetto per casi come questo ed evita l'inserimento in database di dati incopleti.

    Per modo di dire, se i passi sono: merce, anagrafica, modalita:
    - il primo step chiede quale merce ordinare;
    - il secondo step memorizza nella $_SESION["merce"] i dati ricevuti (dopo averli validati!) e poi invia il form di richiesta della anagrafica (o segnala gli errori od omissioni nei dati ricevuti);
    - il terzo step memorizza nella $_SESION["anagrafica"] i dati ricevuti (dopo averli validati!) e poi invia il form di richiesta delle modalità (o segnala gli errori od omissioni nei dati ricevuti);
    - eventuali altri step analoghi secondo necessità...;
    - l'ultimo step riceve e controlla gli ultimi dati ricevuti, li inserisce finalmente nel db assieme a quelli recuperati dalle $_SESSION, fornisce il feedback all'utente.

    Inoltre perfezionarne l'uso ti tornerà utile in vari altri frangenti, se stai facendo una comunity o un negozio online...
    Tecnolgie per l'arte.
    Arti per la tecnologia.
    softhare

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.