Ver Mensaje Individual
  #1 (permalink)  
Antiguo 27/08/2008, 15:05
alexrivera
 
Fecha de Ingreso: agosto-2008
Mensajes: 46
Antigüedad: 15 años, 8 meses
Puntos: 0
Capturar el ID de un List/menu

Buenas tardes a todos:

Tengo un formulario con method="post" action="" (se autoejecuta el mismo), con un List/menu tipo menu, dos Input text, un campo oculto y un boton.

- El List/menu tipo menu esta cargado desde una tabla "vehiculo" (no hay problema).

- Los dos Input text capturan dos fechas desde un objeto calendario y pasa sus valores a una función que resta las fechas y me devuelve los dias resultantes. (no hay problema).

- El campo oculto es para capturar el ID del List/menu tipo menu, que lo necesito para pasarlo como argumento a otra función para hacer una busqueda en otra tabla. (aqui está el problema).

-------------------------------------------------------------------------------------------------------

- El código que carga dinámicamente del List/menu tipo menu es este:


mysql_select_db($database_miConexion, $miConexion);
$query_vehiculo = "SELECT vehiculo_id, vehiculo_nombre FROM vehiculo ORDER BY vehiculo_id ASC";
$vehiculo = mysql_query($query_vehiculo, $miConexion) or die(mysql_error());
$row_vehiculo = mysql_fetch_assoc($vehiculo);
$totalRows_vehiculo = mysql_num_rows($vehiculo);


-------------------------------------------------------------------------------------------------------

Yo necesito que el List/menu me muestre en la etiqueta el valor "vehiculo_nombre" para que el usuario pueda leer el modelo del vehiculo que desea y luego se lo muestro en pantalla. (aqui no hay problema).

Para ello, desde Dreamweaver, al seleccionar el List/menu y dar click en el botón "Dinámico..." le he indicado que:


Opciones del juego de registro: vehiculo
Valores: vehiculo_nombre
Etiquetas: vehiculo_nombre


De esta manera, me muestra en pantalla el nombre del modelo del vehiculo; sino lo hago asi, me muestra el ID del vehiculo y no quiero eso, porque al usuario no le sirve de nada ver en pantalla un numero.

- Pero, internamente necesito obtener el valor del campo "vehiculo_id" del campo "vehiculo_nombre" que el usuario ha seleccionado del List/menu y asignarlo a una variable que pasaré como parámetro a una función para hacer una búsqueda en otra tabla que también tiene la columna "vehiculo_id".

Por eso es que tengo un campo oculto, porque he pensado que puedo pasarlo ahi dinamicamente, pero no se como hacerlo. Quizas me equivoque al querer hacer esto, si es asi, les agradeceria me orientaran al respecto

-------------------------------------------------------------------------------------------------------

-Así es como capturo los valores del formulario


// Capturamos los valores intoducidos:
$vehiculo_nombre = $_POST['vehiculo_nombre']; //(esta correcto)
$vehiculo_id = $row_vehiculo['vehiculo_id']; //(“No se si esta correcto”)
$fecha1 = $_POST['fecha1']; //(esta correcto)
$fecha2 = $_POST['fecha2']; //(esta correcto)


-Y en el campo oculto le he dicho que:

<input name="vehiculo_id" type="hidden" id="vehiculo_id" value="<?php echo $row_vehiculo['vehiculo_id']; ?>"/>

- Pero siempre me muestra en ID de vehículo: 1

Aunque cambie el modelo en el List/menu, el ID siempre es el mismo

-------------------------------------------------------------------------------------------------------

- El Select me muestra los nombres de los vehiculos y le he ordenado que me devuelva el nombre del vehiculo:


<select name="vehiculo_nombre" id="vehiculo_nombre">
<?php
do {
?>
<option value="<?php echo $row_vehiculo['vehiculo_nombre']?>">
<?php echo $row_vehiculo['vehiculo_nombre']?>
</option>
<?php
} while ($row_vehiculo = mysql_fetch_assoc($vehiculo));
$rows = mysql_num_rows($vehiculo);
if($rows > 0) {
mysql_data_seek($vehiculo, 0);
$row_vehiculo = mysql_fetch_assoc($vehiculo);
}
?>
</select>


-------------------------------------------------------------------------------------------------------

Este es un ejemplo de lo que le muestroaal usuario despues de haber realizado dos selecciones en el List/menu:


Modelo de vehículo: Mazda 3 Estandar
ID de vehículo: 1
Fecha de retiro: 27/08/2008
Fecha de retorno: 31/08/2008
Dias a rentar: 4 días
ID de tarifa: 1
Tipo de tarifa: Diaria



Modelo de vehículo: Toyota Yaris Estandar
ID de vehículo: 1
Fecha de retiro: 27/08/2008
Fecha de retorno: 31/08/2008
Dias a rentar: 4 días
ID de tarifa: 1
Tipo de tarifa: Diaria

-------------------------------------------------------------------------------------------------------

Como ven, ID de vehículo: siempre me muestra 1, ese es mi problema, que no cambia, ahi lo he puesto para ver si lo captura, pero siempre me muestra el mismo valor... :(

PREGUNTAS:

¿Cómo hago para capturar el campo "vehiculo_id" del List/menu si este tiene en el option value el "vehiculo_nombre" porque solo asi me muestra el nombre del vehiculo?

¿Cual es forma adecuada de hacer esto?

¿Tienen algun ejemplo con código que pueda ocupar?

Gracias de antemano por vuestra ayuda...