Foros del Web » Programando para Internet » PHP »

mostrar texto de una lista/menu

Estas en el tema de mostrar texto de una lista/menu en el foro de PHP en Foros del Web. Hola: dos preguntas de novato. Tengo una lista/menu con varios textos pero cuando envio el formulario, solo consigo que muestre el número del indice, pero ...
  #1 (permalink)  
Antiguo 17/01/2010, 13:11
 
Fecha de Ingreso: noviembre-2006
Mensajes: 11
Antigüedad: 17 años, 5 meses
Puntos: 0
mostrar texto de una lista/menu

Hola: dos preguntas de novato.
Tengo una lista/menu con varios textos pero cuando envio el formulario, solo consigo que muestre el número del indice, pero lo que quiero es el texto,
Yo he escrito lo siguiente

$aer_origen=$_POST['frm_aer_origen'];

y si eligo la cuarta opcion me muestra un 4 en vez del texto del menú.l

Tampoco consigo que funcione un campo de texto al que le he asignado una fecha a través de un calendario.

Gracias.

Última edición por Marchoso; 17/01/2010 a las 13:14 Razón: modificar texto
  #2 (permalink)  
Antiguo 17/01/2010, 13:21
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 22 años, 3 meses
Puntos: 29
Respuesta: mostrar texto de una lista/menu

Eso se pone en el value del option. Es html no php.

Código HTML:
Ver original
  1. <select name="menu">
  2. <option value="texto">texto</option>
  3. <option value="texto dos">texto dos</option>

PHP y cualquier lenguaje (como javascript) sólo te leerán el value, que es el valor real. Lo que va entre <option> </option> es simple información cómoda para el usuario.
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.
  #3 (permalink)  
Antiguo 17/01/2010, 13:37
 
Fecha de Ingreso: noviembre-2006
Mensajes: 11
Antigüedad: 17 años, 5 meses
Puntos: 0
Respuesta: mostrar texto de una lista/menu

gracias, pero eso ya lo tengo puesto

<select class='combo' id='select_0' name='frm_aer_origen' >
<option value='0'>------------------------</option>
<option value='1'>Madrid</option>
<option value='2'>Barcelona</option>
etc...
</select>

pero cuando ejecuto el formulario trato de asignar el valor del item seleccionado a una variable mediante

$aer_origen=$_POST['frm_aer_origen'];

pero cuando elijo por ejemplo Barcelona, opcion 2 y trato de mostrarlo con

echo "Aeropuerto origen : $aer_origen <br />";

me sale un dos y yo lo que quiero es que me salga Barcelona

Gracias de nuevo.
  #4 (permalink)  
Antiguo 17/01/2010, 14:04
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 22 años, 3 meses
Puntos: 29
Respuesta: mostrar texto de una lista/menu

Pues claro!!!!!!! Es lo que te estoy diciendo:

Código HTML:
Ver original
  1. <select class='combo' id='select_0' name='frm_aer_origen' >
  2. <option>------------------------</option>
  3. <option value='Madrid'>Madrid</option>
  4. <option value='Barcelona'>Barcelona</option>
  5. etc...

O esto, o creas una tabla en la base de datos relacionando los números identificadores con las ciudades y lo compruebes seleccionando sólo el que id==$aer_origen

Entiendes?
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.
  #5 (permalink)  
Antiguo 17/01/2010, 14:32
 
Fecha de Ingreso: noviembre-2006
Mensajes: 11
Antigüedad: 17 años, 5 meses
Puntos: 0
Respuesta: mostrar texto de una lista/menu

te entiendo. lo que no queria es crear una base de datos, pensaba que se podia acceder directamente al texto de las ciudades que ya están en el menú y no solamente a su id.

Gracias.
  #6 (permalink)  
Antiguo 19/01/2010, 07:07
 
Fecha de Ingreso: noviembre-2006
Mensajes: 11
Antigüedad: 17 años, 5 meses
Puntos: 0
Respuesta: mostrar texto de una lista/menu

he encontrado este codigo que funciona en la misma pagina, pero no se como cambiarlo cuando lo envio a la paginda_mostrar_datos

var textoEscogido = document.formul.miSelect.options[indice].text
texto += "\nTexto de la opcion escogida: " + textoEscogi

en el select tengo este codigo:
<select class='combo' id='select_0' name='frm_aer_origen' onchange='cargaContenido()'>
<option value='0'>------------------------</option>
<option value='1'>Barcelona (El Prat)</option>
<option value='2'>Girona</option>
<option value='3'>Reus</option>


envio el formulario con post y donde muestro los datos tengo:
$aer_origen=$_POST['frm_aer_origen'];
echo "Aeropuerto origen : $aer_origen <br />"; // pero esto solo me muestra el numero del indice que he elegido pero no la ciudad, que es lo que me interesa.

Gracias, pero es que soy muy novato
  #7 (permalink)  
Antiguo 19/01/2010, 07:25
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 22 años, 3 meses
Puntos: 29
Respuesta: mostrar texto de una lista/menu

Pero vamos a ver, ibas bien. No te compliques la vida.
¿Las ciudades están en una base de datos?
id | nombreCiudad

Porque si es así:
Código PHP:
Ver original
  1. $aer_origen=$_POST['frm_aer_origen'];
  2. //conexion mysql
  3. $sql="SELECT * FROM ciudades WHERE id=".$aer_origen;
  4. //array de los resultados
  5. echo "Aeropuerto origen : ". $row['nombreCiudad']."<br>";

Ya está!
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.
  #8 (permalink)  
Antiguo 19/01/2010, 07:57
 
Fecha de Ingreso: noviembre-2006
Mensajes: 11
Antigüedad: 17 años, 5 meses
Puntos: 0
Respuesta: mostrar texto de una lista/menu

gracias de nuevo, por tú rápida respuesta.
No tengo ninguna base de datos creada de momento, pero supongo que al final voy a seguir tú consejo.

Gracias de nuevo. Un saludo. Benito
  #9 (permalink)  
Antiguo 19/01/2010, 08:03
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 22 años, 3 meses
Puntos: 29
Respuesta: mostrar texto de una lista/menu

Sino:
Código PHP:
Ver original
  1. $aer_origen=$_POST['frm_aer_origen'];
  2.  
  3. switch($aer_origen) {
  4.    case 1:
  5.      $ciudad="Barcelona";
  6.    break;
  7.    case 2:
  8.       $ciudad="Girona";
  9.     break;
  10.     .....
  11.  
  12.  
  13. }
  14.  
  15. echo $ciudad;
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.
  #10 (permalink)  
Antiguo 19/01/2010, 15:23
 
Fecha de Ingreso: noviembre-2006
Mensajes: 11
Antigüedad: 17 años, 5 meses
Puntos: 0
Respuesta: mostrar texto de una lista/menu

al final hemos dado con la misma soluciónm, justo hace un rato. Me Acordé de cuando programaba en clipper hace 20 años, y se ocurrio buscar algo sobre do case y he puesto el siguiente código.

$idioma=$_POST['frm_idiomalist'] ;

$idioma_text = "";
switch($idioma) {
case 1:
$idioma_text = "Español";
break;
case 2:
$idioma_text = "Inglés";
break;
case 3:
$idioma_text = "Francés";
break;
case 4:
$idioma_text = "Alemán";
break;
case 5:
$idioma_text = "Italiano";
break;

// default:
} pero alguna vez no me coge el select exacto, no sé porque.


De todos modos muchisimas gracias.
Ahora voy a buscar el siguiente problema. Relleno un formulario, muestro los datos, pido confirmacion y guardo los datos en BD y los envio por email. Si encuentras algún ejemplo te quedaría muy agradecido.

Gracias mil. Benito
  #11 (permalink)  
Antiguo 19/01/2010, 16:46
 
Fecha de Ingreso: noviembre-2009
Mensajes: 113
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: mostrar texto de una lista/menu

hola puedes usar. algo asi
Donde pones los valores de las variables que quieres. al seleccionar y mandar, puedes guardar el fomulario o guardar el valor de la variable. tu eliges.

<select name="concepto" size="1" id="concepto">
<option>Seleccionar</option>
<option><? echo $id,$descripcion,$importe?></option>
</select>
  #12 (permalink)  
Antiguo 20/01/2010, 13:28
 
Fecha de Ingreso: noviembre-2006
Mensajes: 11
Antigüedad: 17 años, 5 meses
Puntos: 0
Respuesta: mostrar texto de una lista/menu

ya he encontrado la solución. Estaba en el código que había enviado Marcos al principio, pero no sé en que estaba pensando.

antes tenía:
<select name="frm_idiomalist" id="frm_idiomalist" >
<option value="1">Español</option>
<option value="2">Ingles</option>
<option value="3">Aleman</option>
<option value="4">Frances</option>
<option value="5">Italiano</option>
</select></td>

ahora tengo:
<select name="paises" id="paises">
<option value="Francia">Francia</option>
<option value="España">España</option>
<option value="Italia">Italia</option>
</select>


echo "<br>Países: ". $_POST ["paises"];
con el primer código me mostraba: un número

ahora me muestra el texto del select elegido.

Gracias a todos.

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:11.