Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17
  1. #1
    Utente di HTML.it L'avatar di mdx92
    Registrato dal
    Sep 2007
    Messaggi
    116

    far capire a php il prodotto selezionato, stampare a video il relativo prezzo (no IF)

    Salve a tutti,

    Stò strutturando un sito nel quale l'utente seleziona il prodotto da un select/option e fino a quì non ci sono problemi, il mio problema sorge quando: l'utente invia i dati dal form alla pagina php, la quale deve identificare il prodotto e stampare a video il suo relativo prezzo.

    Per esempio:

    nel form abbiamo: zucchine peperoni piselli

    l'utente seleziona: zucchine

    invia il form che apre la pagina php e gli stampa a video una spece di "fattura" con scritto il prodotto selezionato e l'importo stabilito, una cosa del genere:

    Hai selezionato: zucchine che costa: 0.20€


    Volendo saprei farlo, ma vorrei sapere se esiste un modo più pulito di una serie infinita di IF perchè io scriverei il codice così:

    Codice PHP:
    if ($prodotto ==zucchine) {

    Hai selezionato$prodotto che costa0.20€


    e dato che di select\option ne ho più 15 circa con all'interno minimo 3 massino 6 prodotti, insomma potete capire che bella rottura possa essere

    Quindi ricapitolando:
    Vorrei sapere se esiste un modo per far capire a php il prodotto selezionato e andare a cercare il suo relativo prezzo stampandolo poi a video, se possibile senza usare l' IF.

    Mi piacerebbe, se possibile, che il "listino prezzo" sia contenuto in un file di testo TXT così da poterlo aggiornare facilmente.

    spero di esser stato chiaro
    Un saluto e un grazie a tutti,
    Ennio Campitelli

  2. #2
    Salva il listino in un database ed utilizza le funzioni di manipolazione del database per gestire tutto il resto.

  3. #3
    Utente di HTML.it L'avatar di mdx92
    Registrato dal
    Sep 2007
    Messaggi
    116
    sempre volcissimo pazzesco, se parli di mysql purtoppo non sò usarlo per niente non mi sono mai interessato...anche se sò ke è utilissimo!
    Tu non conosci uno script qualcosa che faccia quello che ho descritto sopra?, anche che utilizza mysql, l'iportante che sia già fatto xkè non saprei scrivere nulla da zero che riguardi mysq...
    grazie per la tempestività!

  4. #4
    Potresti, in maniera molto ma molto poco ortodossa, salvare un cookie quando selezioni l'elemento dal menu a tendina, e "leggerlo" nella pagina php che ti fa comparire i dati che ti servono.

    O in alternativa, fai tutto in una pagina con una funzione javascript.

  5. #5
    Puoi fare un semplice file di testo tipo questo:

    codice:
    zucchine:0.20
    piselli:0.80
    fagioli:0.70
    .....
    poi leggi il file e crei un array usando il nome dell'ortaggio come indice e il prezzo come valore. Alla fine ti basta fare:
    Codice PHP:
    echo "Hai selezionato $prodotto che costa {$array['prodotto']}"

  6. #6
    Utente di HTML.it L'avatar di mdx92
    Registrato dal
    Sep 2007
    Messaggi
    116
    ciao k.b
    grazie per il tuo utilissimo consiglio ma non riesco a creare un array funzionante decentemente...ho provato anche con la funzione: explode per separare il prodotto dal prezzo.....ma non ci riesco.

    Se ti va, saresti così gentile da scrivermi un esempio di array?

    Grazie millle
    Ennio

  7. #7
    Nel fare le domande qui sarebbe utile specificare il livello di conoscenza del PHP (e della programmazione in generale) cosi' uno sa se e' richiesto un consiglio o direttamente il codice e bon

    Comunque, prova questo:

    Codice PHP:
    <?php

    $config 
    file('verdure.txt');
    $prezzo = array();

    foreach (
    $config as $line) {
        list(
    $prodotto$importo) = split(":"$line);
        
    $prezzo[$prodotto] = $importo;
    }

    print_r($prezzo);
    ?>
    File verdure.txt:

    codice:
    zucchine:0.20
    piselli:0.80
    fagioli:0.70

  8. #8
    Utente di HTML.it L'avatar di mdx92
    Registrato dal
    Sep 2007
    Messaggi
    116
    hai ragione programmo il php da un annetto ma stò ancora imparando come puoi notare

    allora il tuo script l'ho provato e mi stampa:

    Array ( [zucchine] => 0.20 [pere] => 0.15 [piselli] => 0.50 )

    non credo sia il risultato voluto da entrabe
    grazie!

  9. #9
    Utente di HTML.it L'avatar di mdx92
    Registrato dal
    Sep 2007
    Messaggi
    116
    ho provato a modificare così:

    Codice PHP:

    foreach ($config as $line) { 

    list(
    $prodotto$importo) = split(":"$line); 
    }

    echo
    " hai scelto: $prodotto e costa: $importo"
    e devo dire che funziona!! però come prodotto e relativo prezzo prende sempre e solo i fagioli! che sono gli ultimi della lista! questo nonostante l'input dal form sia diverso dai fagioli...
    grazie per la cortesia! e la pazienza !

  10. #10
    Il codice che ti ho postato crea solo l'array (il print_r che avevo messo era solo per mostrartene i contenuti), il vero prodotto su cui lavorare e' quello che l'utente sceglie tramite il form, no?

    La tua versione modificata non crea nessun array, solo due variabili che a ogni "giro" di foreach vengono sovrascritte, quindi e' normale che ti stampi solo l'ultimo valore. Dove usi l'input del form?

    Processo logico:
    - prendi il valore scelto dall'utente e lo metti, per dire, in $scelta_utente
    - crei l'array $prezzo come ti ho scritto sopra
    - echo "hai scelto: $scelta_utente e costa: {$prezzo[$scelta_utente]}"

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.