Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    Gestione dati con i cookie

    Buon giorno a tutti.
    Ho una serie di prodotti che il cliente prima dell'acquisto può sottoscrivere riempiendo dei moduli, uno alla volta.
    Finora, come cliccava su "add to cart" faceva una insert nella tabella di riferimento.
    Tipo:
    - se voleva la pasta inseriva il prodotto nella tb_pasta
    - se carne nella tb_carne
    ecc ecc.

    Però vorrei far in modo di memorizzare questi dati prima in locale, cosi da non connettermi sempre con le tabelle e quindi il DB, e solo in un secondo momento con un pulsante "conferma", prelevare i dati in locale ed eseguire l'INSERT nelle relative tabelle.

    Domanda: tutto questo si può fare attraverso i cookie oppure in altro modo?
    Grazie mille.

  2. #2
    un facsimile dei valori che andrebbero dentro il cookie:
    -nome
    -cognome
    -indirizzo
    -data di nascita
    -tipo contratto
    -età
    insomma una serie di informazioni.
    Ma secondo voi in un solo cookie si possono memorizzare?
    grazie.

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2014
    residenza
    Voltati
    Messaggi
    913
    Puoi salvarli in due modi:

    • Crei un cookie per ogni voce
      Ad esempio
      codice:
      biscottino_nome
      biscottino_cognome
      ...
    • Crei un cookie unico strutturato così:
      codice:
      nome|~|cognome|~|indirizzo|~|...
      e poi lo recuperi con un explode
      (Ho usato |~|, ma va bene qualsiasi altra cosa poco utilizzata)
    No

  4. #4
    buon giorno, ti ringrazio per l'interesse.
    Quindi, per ogni acquisto di ogni singolo prodotto creo un cookie, giusto?
    Ultima cosa.
    Ho una pagina che mi riepiloga tutti gli acquisti.
    Ammettiamo il caso ho 10 acquisti, avrò quindi 10 cookie.
    Per creare la lista dei prodotti acquistati, entro nella directory dove ho tutti i cookie, prendo, attraverso un ciclo tutti i cookie, e poi attraverso l'explode recupero i valori che mi servono per creare la lista dei prodotti ed è finito qui?

    Grazie ancora.
    Ultima modifica di ANTAGONIA; 24-04-2014 a 09:37

  5. #5
    eccomi di nuovo, sto facendo in questo modo:
    Codice PHP:
    setcookie("tb_detersivi",$contratto."~".$nome."~".$cognome."~".$cellulare."~".$telefono_fisso."~".$email."~".$nazionetime()+3600*14);//14 giorni
    //prendo i valori singolarmente
    $tb_detersivi explode("~",@$_COOKIE['tb_detersivi']);echo "<br/><br/><br/>";echo "tipo contratto: ".$tb_detersivi[0];echo "<br/>nominativo: ".utf8_encode($tb_detersivi[1]) . " " utf8_encode(stripslashes($tb_detersivi[2])); 
    Ora però mi sorge un dubbio.
    Ammettendo il caso, che io debba comprare due prodotti identici per persone differenti, devo creare due cookie distinti ,perché all'interno di ognuno avrò nominativi e recapiti diversi.giusto?

    Oppure si può aggiungere all'interno del cookie, i riferimenti del secondo acquisto?
    grazie ancora.

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2014
    residenza
    Voltati
    Messaggi
    913
    Giusto, però due persone diverse avranno i cookia su due computer diversi.
    Inoltre attento che se c'è un cookie chiamato "A" e sullo stesso pc salvi un altro cookie "A" il secondo sovrascrive il primo
    No

  7. #7
    Per ogni prodotto anche se uguale, ma per nominativi diversi, dovrò creare due cookie.giusto?
    Nel senso, io Antonio, per conto di Alessandro e Gaetano, acquisto per loro due prodotti.
    Quindi, io sono sul mio pc e faccio gli acquisti, quindi dovrò avere due cookie dello stesso prodotto, ma per due persone diverse.OK?

    Poi, ogni cookie ha il nome del prodotto che si vuole acquistare, quindi stavo pensando di fare in questo modo:
    Codice PHP:
    //per default questi sono i nomi dei cookie, che ho impostato nei rispettivi moduli per l'acquisto
    //quindi se sono nel modulo dei detersivi, creerò al momento dell'invio dei dati il cookie['tb_detersivi'],cosi come per gli altri..
    $arr = array("tb_detersivi","tb_scarpe","tb_vernici");
    //qui vorrei assegnare al $_COOKIE['pippo'] il nome del cookie presente nell'array
    foreach ($arr as $key => $value) {    $_COOKIE['pippo'] =$value;//assegno il nome al cookie    //echo "A: ".$_COOKIE['pippo']."<br/>";
            
    $tbs     explode("~",$_COOKIE['pippo']);    echo "<br/><br/><br/>";    echo "tipo contratto: ".$tbs[0];    echo "<br/>nominativo: ".utf8_encode($tbs[1]) . " " utf8_encode(stripslashes($tbs[2]));} 
    vorrei creare la lista dei prodotti acquistati in modo dinamico e con poco codice.
    Però purtroppo non riesco ad assegnare al cookie['pippo'] il nome del cookie che voglio.
    In pratica $_COOKIE['pippo'] non viene nominato "tb_detersivi", oppure "tb_scarpe" ma con il contenuto ossia: detersivi~alessandro~rossi

    In questo modo, non posso ciclare ed estrapolare il contenuto di ogni singolo cookie perché per lui quel cookie nominato in quel modo non esiste.
    Domanda, come faccio?
    Grazie mille.

  8. #8
    ho fatto in questo modo:
    Codice PHP:
    echo "<br/><br/>";        
    $arr "tb_detersivi,tb_scarpe,tb_vernici";//array nome dei cookie        
    $tt explode(",",$arr);        
    echo 
    "<form action='javascript:void(0)' method='POST'>";        
    echo 
    "<table style='font-size:13px' data-role='table' id='movie-table' data-mode='reflow' class='ui-responsive table-stroke'>                
    <thead style='background-color:#000;color:#FFF'>                    
    <tr>                        
    <th data-priority='1'>Utenza/Prodotto</th>                        
    <th data-priority='2'>Stipula</th>                        
    <th data-priority='3'></th>                    
    </tr>                
    </thead>                
    <tbody>"
    ;        
    for(
    $x=0;$x<=count($tt);$x++){            
    if(isset(
    $_COOKIE[@$tt[$x]])){                
    $tbs     explode("~",$_COOKIE[@$tt[$x]]);
    echo 
    "<tr>";                
    echo 
    "    <td>".$tbs[0]. "</td><td>" . ($tbs[3]=="0000-00-00" "to&nbsp;confirm" '') . "</td><td>elimina</td>";
    echo 
    "</tr>";
    }
    }
    echo 
    "    </tbody></table>";
    echo 
    "</form>"
    Per il momento va bene cosi.
    Grazie mille.
    Ultima modifica di ANTAGONIA; 24-04-2014 a 15:21

  9. #9
    Buon giorno di nuovo.
    Ho quest'altra curiosità.
    Riprendo quello che volevo sapere dal post precedente:
    __________________________________________________ __________________________________________________ ____________
    Per ogni prodotto anche se uguale, ma per nominativi diversi, dovrò creare due cookie.giusto?
    Nel senso, io Antonio, per conto di Alessandro e Gaetano, acquisto per loro due prodotti.
    Quindi, io sono sul mio pc e faccio gli acquisti, quindi dovrò avere due cookie dello stesso prodotto, ma per due persone diverse.OK?
    __________________________________________________ __________________________________________________ ____________

    Stavo pensando di nominare i cookies in modo sequenziale.
    Cioè.
    Riempio il modulo del prodotto "scarpe", per conto di Antonio, clicco "add to cart" e creo il primo cookie che si chiama "tb_scarpe_01".
    Dopo di ché, riapro lo stesso modulo, inserisco i dati di Gaetano, clicco su "add to cart" e creo il secondo cookie che vorrei chiamare "tb_scarpe_02".
    Domanda: è giusto come ragionamento oppure si può fare in altro modo?
    grazie mille


  10. #10
    ad ogni creazione del cookie che contiene il prodotto, tengo memoria, in un altro cookie della quantità, come se fosse un conta click, e ad ogni passaggio incremento di una unità il cookie che conteggia e modifico il nome del cookie che contiene il nuovo prodotto, in questo modo:
    Codice PHP:
    $contAcquisti=@$_COOKIE["acquisti"];//prova a recuperare il cookie
    if(isset($contAcquisti))$contAcquisti++;else$contAcquisti=0;
    //creo cookie contatore
    setcookie("acquisti""$contAcquisti"time()+3600*30"/");


    //creo cookie per prodotto
    setcookie("tb_scarpe_$contAcquisti",$contratto,time()+3600*30);//30 giorni
    //la variabile $contAcquisti è settata nel contatore 
    In questo modo,ad ogni passaggio su questa pagina, avendo incrementato di una unità, creo un nuovo cookie con le caratteristiche descritte.

    Il problema sorge nel momento in cui, vado a visualizzare la lista dei prodotti acquistati.Cioè.
    A priori non posso sapere se il prodotto "scarpe" è stato acquistato.
    Ma dovrei poter sapere quali sono i $_COOKIE[] di tutti i prodotti acquistati fino a quel momento.
    E' come se dovessi fare uno scandir della cartella dove sono contenuti i cookie e vedere quali sono.
    Mi sono spiegato?

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.