Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2000
    Messaggi
    727

    cercasi checkbox con doppio VALUE....

    un amico che ha un ristorante mi ha chiesto di preparargli una pagina in cui i clienti possano autocostruirsi il menù e visualizzare subito la relativa spesa, io l'avrei pensato così:

    //metto delle checkbox con i piatti da scegliere

    <form name="form" method="post" action="">
    <table width="600" border="0">
    <tr>
    <td>
    <input type="checkbox" name="a1" value="pizza"> pizza </td>
    <td>
    <input type="checkbox" name="a2" value="pasta"> pasta </td>
    <td>
    <input type="checkbox" name="a3" value="pollo"> pollo </td>
    <input type="submit" name="calcola" value="calcola">
    </form>

    //con il php prendo le scelte fatte e le scrivo, riassumendole

    <?php
    $piatto01 = $_POST["a1"];
    $piatto02 = $_POST["a2"];
    $piatto03 = $_POST["a3"];
    echo "hai scelto
    $piatto01
    $piatto02
    $piatto03";

    //poi dovrei fare il conto della spesa e allora pensavo di fare così

    $piatto01 = $prezzo01;
    $piatto02 = $prezzo02;
    $piatto03 = $prezzo03;

    $prezzo01 = '20';
    $prezzo02 = '12';
    $prezzo03 = '9';

    $somma=$prezzo01+$prezzo02+$prezzo03;
    echo "
    spenderai $somma euro";

    //ma non funziona e qui la mia richiesta assurda, se nel value potessi mettere sia il nome del piatto che il prezzo potrei fare sia il riassunto dei piatti scelti che la somma da pagare... a questo punto come posso fare? ho anche pensato di usare degli array del tipo:
    $antipasto01 = array ("bresaola","7");
    $antipasto02 = array ("insalata_russa","5");
    ma non so dove metterli, insomma, sono un cavernicolo del php, lo ammetto.... che mi può aiutare?
    grazie

  2. #2

    Re: cercasi checkbox con doppio VALUE....

    Originariamente inviato da theseo
    un amico che ha un ristorante mi ha chiesto di preparargli una pagina in cui i clienti possano autocostruirsi il menù e visualizzare subito la relativa spesa, io l'avrei pensato così:

    //metto delle checkbox con i piatti da scegliere

    <form name="form" method="post" action="">
    <table width="600" border="0">
    <tr>
    <td>
    <input type="checkbox" name="a1" value="pizza"> pizza </td>
    <td>
    <input type="checkbox" name="a2" value="pasta"> pasta </td>
    <td>
    <input type="checkbox" name="a3" value="pollo"> pollo </td>
    <input type="submit" name="calcola" value="calcola">
    </form>

    //con il php prendo le scelte fatte e le scrivo, riassumendole

    <?php
    $piatto01 = $_POST["a1"];
    $piatto02 = $_POST["a2"];
    $piatto03 = $_POST["a3"];
    echo "hai scelto
    $piatto01
    $piatto02
    $piatto03";

    //poi dovrei fare il conto della spesa e allora pensavo di fare così

    $piatto01 = $prezzo01;
    $piatto02 = $prezzo02;
    $piatto03 = $prezzo03;

    $prezzo01 = '20';
    $prezzo02 = '12';
    $prezzo03 = '9';

    $somma=$prezzo01+$prezzo02+$prezzo03;
    echo "
    spenderai $somma euro";

    //ma non funziona e qui la mia richiesta assurda, se nel value potessi mettere sia il nome del piatto che il prezzo potrei fare sia il riassunto dei piatti scelti che la somma da pagare... a questo punto come posso fare? ho anche pensato di usare degli array del tipo:
    $antipasto01 = array ("bresaola","7");
    $antipasto02 = array ("insalata_russa","5");
    ma non so dove metterli, insomma, sono un cavernicolo del php, lo ammetto.... che mi può aiutare?
    grazie
    Secondo me la cosa migliore che puoi fare è inserire tutti i dati dentro un db e fare un checbok dinamico ovvero dentro un while($a=mysql_fetch_array($result)) inserisci <input type="checkbox" name="$piatto=$a['piatto']" value="$piatto=$a['piatto']" />

    E poi da qui fai una ricerca sul db dei prodotti che sono stati selezionati e gli fai la somma dei rispettivi prezzi...

  3. #3
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    o semplicemente in javascript (se ne hai familiaretà)....

    del resto non tratti dati sensibili no?
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2000
    Messaggi
    727
    grazie delle risposte
    il sito del mio amico non ha un db di supporto
    e non sono tanto esperto di javascript....
    ma se mi fate vedere un esempio di codice che andrebbe bene riesco a ravanare un pò...

    ma il mio metodo in php era proprio così barbaro? il problema era poi solo fare il conto...
    non c'è modo di cambiare valore alle variabili, del tipo

    $variabileA = pippo
    fine valore pippo
    da adesso la $variabileA cambia e diventa:
    $variabileA = paperino

  5. #5
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    prova così
    Codice PHP:
    <form name="form" method="post" action="">
    <table width="600" border="0">
    <tr>
    <td>
    <input type="checkbox" name="piatto[1]" value="pizza"> pizza 
    <input type="hidden" name="value[1]" value="10.00" />
    </td>

    <td>
    <input type="checkbox" name="piatto[2]" value="pasta"> pasta </td>
    <input type="hidden" name="value[2]" value="10.00" />
    <td>
    <input type="checkbox" name="piatto[3]" value="pollo"> pollo </td>
    <input type="hidden" name="value[3]" value="pollo" />
    <input type="submit" name="calcola" value="calcola">
    </form>
    <?php 
    $piatti
    =array();
    foreach(
    $_POST['piatto'] as $key=>$value){
        if(
    $value != ""$piatti[$value]=$_POST['value'][$key];
        }

    foreach(
    $piatti as $piatto=>$costo){
        echo 
    "hai scelto: $piatto che costa $costo
    "
    ;
        }

    ?>
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  6. #6
    Originariamente inviato da theseo
    grazie delle risposte
    il sito del mio amico non ha un db di supporto
    e non sono tanto esperto di javascript....
    ma se mi fate vedere un esempio di codice che andrebbe bene riesco a ravanare un pò...

    ma il mio metodo in php era proprio così barbaro? il problema era poi solo fare il conto...
    non c'è modo di cambiare valore alle variabili, del tipo

    $variabileA = pippo
    fine valore pippo
    da adesso la $variabileA cambia e diventa:
    $variabileA = paperino
    E' sbagliato come ragionamento... poi te come fai a prendere i piatti che sono stati scelti?
    Alla fine hai solo l'ultimo piatto scelto...

    Comunque quello che ti ho postato è codice php con relazione a un db secondo me è la soluzione migliore in quanto il tuo amico può aggiornare il db e quindi il menù e tu non devi fare altre modifiche...
    Se te invece utilizzi gli array ad ogni modifica del menù ti tocca cambiare le voci dell'array non so se questa cosa l'hai considerata...

    Il sito è già online da vedere il menù?e aiutarti nella implementazione

    E un'ultima cosa, da quello che hai scritto il tuo amico vuole più piatti nel menù che sceglie un cliente quindi una lista di piatti con affianco il suo prezzo e alla fine un totale se non ho capito male...
    Cosi te fai un piatto e un totale e basta

  7. #7
    Utente di HTML.it L'avatar di bode
    Registrato dal
    Feb 2007
    Messaggi
    304
    La butto li, e farlo con i file, visto che non c'è db?

  8. #8
    Ma fatti semplicemente un file PHP che contiene un array in questa forma:
    Codice PHP:
    $prezzo = array(
        
    'pizza'      => 9.50,
        
    'mozzarella' => 6.50,
        
    'prosciutto' => 8.90,
        
    // eccetera eccetera eccetera
    ); 
    lo includi dove devi fare il calcolo e magicabula hai la tua corrispondenza piatto <-> prezzo senza dover passare due valori.

  9. #9
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    Originariamente inviato da k.b
    Ma fatti semplicemente un file PHP che contiene un array in questa forma:
    Codice PHP:
    $prezzo = array(
        
    'pizza'      => 9.50,
        
    'mozzarella' => 6.50,
        
    'prosciutto' => 8.90,
        
    // eccetera eccetera eccetera
    ); 
    lo includi dove devi fare il calcolo e magicabula hai la tua corrispondenza piatto <-> prezzo senza dover passare due valori.
    manca il pomodoro
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  10. #10
    Utente di HTML.it
    Registrato dal
    Jul 2000
    Messaggi
    727
    uh grazie per gli aiuti, allora:

    - per dottwatson: ho provato il tuo codice, funziona ma non risco a capire come fargli fare il calcolo del costo totale

    - per K.B: ho fatto il file con l'array, l'ho incluso, ho aggiunto
    echo "
    spenderai $prezzo euro";
    ma lui mi stampa: spenderai Array euro........
    non risco a capire cosa manca argh

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 © 2024 vBulletin Solutions, Inc. All rights reserved.