Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it L'avatar di gaten
    Registrato dal
    Jul 2007
    Messaggi
    1,269

    select con doppio valore in pagina php

    Salve ragazzi, ho una select (menu) di questo tipo:

    codice:
    <form name="prodotto" method="post" action="pagina.php">
    <select name="colors">
    <option value="#FFFFFF">Bianco</option>
    <option value="#000000">Nero</option>
    ...
    </select>
    </form>
    Adesso, collego il form ad una pagina.php, adesso per ogni option, nella pagina.php vorrei portarmi dietro il valore numerico del colore e il nome:

    es. #FFFFFF , Bianco.

    Purtroppo mi stampa solamente il valore numerico del colore (#FFFFFF).

    Come posso risolvere?
    Grazie anticipatamente
    Con i sogni possiamo conoscere il futuro...

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    dovresti usare un array di riferimento - es.: $valori = array('000000' => 'nero', 'ffffff' => 'bianco')) - con cui generare il form e anche analizzare i risultati, diversamente puoi passare i due valori nell'attributo value (ma non è molto "pulita" come soluzione) come preferisci - p.es.: <option value="#FFFFFF,Bianco">Bianco</option> - e poi usare "explode" per leggerli separatamente

  3. #3
    Utente di HTML.it L'avatar di gaten
    Registrato dal
    Jul 2007
    Messaggi
    1,269
    Quella che mi era venuta in mente era la seconda soluzione , l'utilizzo dell'explode.
    Ma in realtà iop già utilizzo un array perche uso una select multipla di questo tipo:

    <select name="valori[]"....>
    e poi qui ho le option.

    Quindi dovrei utilizzare come chiave il valore RGB e come valore il nome del colore, ma come faccio a crearmi l'array in questo modo:

    array = ("#FFFFFF" => "Bianco", "#000000" => "Nero"....)?
    dalla select ovviamente.
    Con i sogni possiamo conoscere il futuro...

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    mmmh.. ma le varie OPTION non le generi tu? Dovresti avere un array come quello indicato ('ffffff' => bianco, etc.) con cui generi le option, tipo:

    Codice PHP:
    foreach ($valori as $val => $txt) {
      print 
    '<option value="'.$val.'">$txt</option>';
    }; 
    quando poi leggi il form ricevi in input la variabile $_POST['colors'] che varrà appunto il "codice" del colore e con $valori[$_POST['colors']] ricavi invece il nome.
    Naturalmente l'array deve essere inizializzato sia nello script che genera il form sia in quello che lo gestisce, che potrebbero anche essere lo stesso, oppure userai un include

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.