• User

    problemino veloce su variabili

    ciao a tutti...ho una domanda veloce....sullo script che sto elaborando...

    sto creando un modulo d'ordine on line, ci sono due caselle di immissione dati che l'utente deve inserire per ordinare, il codice prodotto e la quantità...tutti gli altri dati vengono reperiti nella tabella mysql.

    il problema che ho riscontrato è che se io inserisco i dati, lui me li elabora senza problemi ma se faccio il refresh della pagina anche se non ho inserito niente, lui tiene in memoria i dati che ho inserito e mi reinserisce lo stesso prodotto....

    c'è sicuramente un comando per evitare ciò vero?...


  • Moderatore

    Ciao 🙂

    Più che un comando puoi attuare delle procedure:

    1. quando fai l'inserimento lo fai fare da un'altra pagina che a fine lavoro faccia un redirect lato server verso la pagina iniziale

    2. fai un controlo sui dati del db.

    3. generi una chiave casuale che ti fa il controllo dell'esistenza del record.

    quali di questi ti dice qualcosa che li sviluppiamo? 🙂

    :ciauz:


  • User
    1. io propongo la prima ipotesi...

    anche perchè così poi nella pagina successiva posso recuperare i dati dell'utente e in quella finale (di conferma dell'ordine) recupero nuovamente anche i dati dell'ordine...si...mi piace l'idea e la logica (almeno spero)...

    1. Vista la tua disponibilità 🙂 approfitto per domandarti ancora una cosa...

    come posso fare per creare una tabella ad hoc per ogni utente che cerca di fare un ordine?...mi sono posto il problema che se nello stesso momento ci sono due utenti che fanno un ordine (cosa improbabile ma da tenere presente).

    Penso che se l'utente A vuole effettuare l'ordine nel momento in cui "accede"alla pagina degli ordini, nel db devo creare una tabella con nome casuale da richiamare nelle varie fasi...in modo che se l'utente B accede anche lui alla pagina degli ordini, gli si creerà un'ulteriore tabella casuale.....

    Alla fine le tabelle naturalmente ad "ordine effettuato" andranno cancellate dal db...

    sono verso la giusta strada?


  • Moderatore

    Per me per queste cose restano ottime le sessioni.

    Metti l'ordine in sessione. Quando l'utente va alla cassa, aggiungi i valori nella tabella ordini e distruggi la sessione.

    Se vuoi usare tabelle temporanee, puoi creargli un id univoco, ad esempio ip+data, o quello che ti pare, gli dai un timetolife, tipo 4 ore e periodicamente mandi uno script a controllare se la tabella è scaduta e la cancelli.
    Chiaramente la cancelli anche nel caso in cui l'utente fa un ordine. 🙂