Menù a tendina

  • Creatore Discussione Creatore Discussione Hackx
  • Data di inizio Data di inizio

Hackx

Utente Attivo
20 Ago 2013
108
0
16
Ciao a tutti,

Volevo chiedervi se mi potevate aiutare nel controllo per un menù a tendina .. e la relativa trascrizione della scelta al DB (mysql).

Ecco qui un piccolo esempio:
HTML:
<select id="prova" name="menu_tendina">
   <option value="scelta_zero">scelta_1</option>
   <option value="scelta_due"> scelta_2</option>
</select>


Vi ringrazio moltissimo,
Andrea
 
ciao. ti allego il "CampoTendina.php"
se lo leggi... dovrebbe essere abbastanza chiaro
in ogni caso la variabile "$OPco_arrot" è associata al menù a tendina e può essere gestita in entrata ed in uscita al DB
fai sapere se è sufficiente
ciao
marino
HTML:
<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>Form di esempio</title>
  </head>
  <body>
    <FORM name="form1" method="post" action="CampoTendina.php">
      <?php
# http://localhost/test_site/php/test/campotendina.php
        if (!isset($_POST["OPco_arrot"])) $OPco_arrot = "0,001";
        else {
          $OPco_arrot = $_POST["OPco_arrot"];
          echo "<b>hai scelto : $OPco_arrot</b><br><br>";
        }
      ?>
      <b>arrotondamento : </b>
      <select name="OPco_arrot">
        <option<?php echo ($OPco_arrot == "0,1" ? ' selected="selected"' : ''); ?> value="0,1">0,1</option>
        <option<?php echo ($OPco_arrot == "0,01" ? ' selected="selected"' : ''); ?> value="0,01">0,01</option>
        <option<?php echo ($OPco_arrot == "0,001" ? ' selected="selected"' : ''); ?> value="0,001">0,001</option>
        <option<?php echo ($OPco_arrot == "0,0001" ? ' selected="selected"' : ''); ?> value="0,0001">0,0001</option>
      </select>
      <input type="submit" name="submit" value="submit" style="font-weight: bold;" />
    </form>
  </body>
</html>
 
Ciao marino51 :)

Innanzitutto ti ringrazio moltissimo per la ripidità nella tua risposta !

Ti volevo chiedere un'altra cosa .. che forse dal tuo esempio non ho ben capito.. come posso, dopo la creazione del DB e della relativa tabella .. far inviare il dato scelto tramite menù a tendina nella relativa voce nella tabella DB ?

Ti ringrazio moltissimo,
Andrea
 
ciao Andrea,

nell'esempio, la variabile "$OPco_arrot" contiene il valore del menu a tendina,

quindi la puoi impostare con il valore letto dal db
"select ....,OPco_arrot,.... from tabella where ... condizioni ...."
e visualizzare nella form

la puoi inserire nel db con
"insert into tabella ( ..., OPco_arrot, ....) values (....., '". $OPco_arrot. "' , ....)"

oppure modificare con
"update tabella set OPco_arrot = '". $OPco_arrot. "' where .... condizioni ..."

scusa ho usato notazione per ms sql, non conosco mysql
sono anche stato generico perché non hai dato nessuna info sulla struttura del tuo database

spero ti basti
ciao
marino
 
ciao Andrea,

nell'esempio, la variabile "$OPco_arrot" contiene il valore del menu a tendina,

quindi la puoi impostare con il valore letto dal db
"select ....,OPco_arrot,.... from tabella where ... condizioni ...."
e visualizzare nella form

la puoi inserire nel db con
"insert into tabella ( ..., OPco_arrot, ....) values (....., '". $OPco_arrot. "' , ....)"

oppure modificare con
"update tabella set OPco_arrot = '". $OPco_arrot. "' where .... condizioni ..."

scusa ho usato notazione per ms sql, non conosco mysql
sono anche stato generico perché non hai dato nessuna info sulla struttura del tuo database

spero ti basti
ciao
marino

Ciao marino51 :)

Perfetto fino a qui ci sono.. si,si infatti posso estrapolare i dati dal form tramite una variabile tipo :

PHP:
$OPcp_arrot
/*oppure, con il mio primo esempio di menù a tendina*/
$_POST['menu_tendina']
/*e poi fare i vari controlli*/

Io inserisco i dati nel DB tramite il comando "INSERT" però prima non devo impostare un ciclo if/else?

Esempio:

PHP:
if($_POST['menu_tendina'] == 'scelta_zero')
{
echo "scelta sbagliata";
}
elseif ($_POST['menu_tendina'] == 'scelta_due')
{
echo "scelta giusta";
}
else
{
echo "non hai scelto";
}
/*un po come si fa per il controllo nome, cognome ecc*/

Però il mio problema è .. posso infilare in ogni controllo (scelta_zero, scelta_due ecc) un invio file al DB ("INSERT")
.. se è la scelta_zero -> "INSERT" ... se è la scelta_due -> "INSERT"? Non è troppo pesante ?

Spero di essermi spiegato il più possibile :)

Grazie mille davvero,
Andrea
 
ho capito che vuoi memorizzare tutte le scelte che vengono operate dagli utenti,
se così è penso che puoi mettere una sola insert con il valore del $_POST['menu_tendina'] nella posizione più consona, dello script,
probabilmente anche prima dell' if con echo
ciao
marino

ps.: scusa il ritardo ....
 
ho capito che vuoi memorizzare tutte le scelte che vengono operate dagli utenti,
se così è penso che puoi mettere una sola insert con il valore del $_POST['menu_tendina'] nella posizione più consona, dello script,
probabilmente anche prima dell' if con echo
ciao
marino

ps.: scusa il ritardo ....

Grazie mille davvero :) .. adesso sperimenterò un po di modi xD !

Tranquillo per il ritardo .. ognuno ha i suoi impegni ;) !


Andrea
 

Discussioni simili