Visualizzazione dei risultati da 1 a 6 su 6

Discussione: Carrello in php

  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2017
    residenza
    Italy
    Messaggi
    5

    Carrello in php

    Salve a tutti, ho un problema che non riesco a risolvere:
    Sto realizzando un carrello in php, per una pagina di shopping online, che si affida ad un database.
    Ho fatto in modo che ogni pagina di ogni prodotto abbia il bottone "aggiungi al carrello", che non è altro che un link che porta ad una pag. in php che effettua i vari controlli e aggiunge l'elemento nel db, non sto lavorando con i cookie o simili (è una cosa molto semplice), ho fatto in modo che nella tabella "carrello" ci sia un "id_utente" che è lo stesso della tabella utente in modo che ogni prodotto rimanga "in memoria".

    a questo punto arriva il problema, per visualizzare il carrello ho fatto un'altra pagina in php, che mi stampa tutto l'html della pagina, più con un ciclo tutti gli elementi che sono nel db che hanno l'id_utente uguale a quello in sessione (per cui l'utente loggato), il punto è che oltre agli elementi nel ciclo stampo anche pezzi di html e dovrei mettere anche i un bottone "rimuovi questo elemento" ma ovviamente dopo essere uscito dal ciclo non potrò mai sapere quale elemento l'utente vuole rimuovere... per favore aiuto sono giorni che sono bloccato qui e non trovo una soluzione.

    ripeto è una cosa semplice, banale, e le mie conoscenze del php sono discrete, ma purtroppo un po' limitate, molte cose che ho trovato su internet non le ho capite, poiché mai viste.

  2. #2
    Utente di HTML.it L'avatar di Angarat
    Registrato dal
    Nov 2003
    Messaggi
    157
    Ciao,

    io di solito uso un approccio diverso, per il carrello temporaneo mi affido alle sessioni.

    Nel tuo caso specifico suppongo che la tabella carrello oltre all'id dell'utente ed all'id del prodotto abbia anche un id univoco, ecco nel pulsante metti questo id univoco che ti permette di riconoscere il record, quando premi il pulsante elimini il record.

    A
    Skull of a Skeleton with Burning Cigarette

    Angarat quante minchiate spari con un litro? Così mi regolo...

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2017
    residenza
    Italy
    Messaggi
    5
    si infatti la tabella è composta da:
    id_carrello, id_utente, prodotto, quantità.

    l'id univoco sarebbe l'"id_carrello", ogni riga ha un "id_carrello" diverso.
    e fino qui ci siamo

    il problema è che non posso sapere quanti elementi l'utente mette nel carrello, e di conseguenza devo stampare un numero di parti html, con il pulsante, uguale al numero di elementi che l'utente ha messo nel carrello, quindi dovrei creare un'altra pagina php per rimuovere l'elemento sia dal "carrello" sia dal db, ma ovviamente utilizzando un ciclo per stampare non saprò mai quale elemento l'utente vuole eliminare, e qualsiasi bottone lui prema, ovviamente, mi elimina l'ultimo elemento stampato

  4. #4
    Utente di HTML.it L'avatar di boots
    Registrato dal
    Oct 2012
    Messaggi
    1,626
    Ma se id_carrello è univoco (primary key) che difficoltà hai fare come dice Angarat?

    basta che fai una cosa del genere:
    Codice PHP:
    <?php
    while($row = ...prendi la riga dal db): ?>
     <a href="cancella.php?id=<?php echo $row['id_carrello']?>">cancella</a>
       
    <?php endwhile ?>
    Ovviamente poi controlli nel cancella.php se effettivamente quella riga è dell'utente

  5. #5
    Utente di HTML.it L'avatar di Angarat
    Registrato dal
    Nov 2003
    Messaggi
    157
    e poi devi valutare di congelare i dati dell'ordine in una tabella di modo che anche se letto successivamente a modifiche del catalogo prodotti il tuo ordine rimanga sempre uguale a se stesso
    Skull of a Skeleton with Burning Cigarette

    Angarat quante minchiate spari con un litro? Così mi regolo...

  6. #6
    Utente di HTML.it
    Registrato dal
    Jun 2017
    residenza
    Italy
    Messaggi
    5
    Ragazzi ho fatto come mi avete consigliato, e vi devo ringraziare moltissimo per i conigli che mi avete dato, funziona perfettamente, grazie mille di tutto.

Tag per questa discussione

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.