Foros del Web » Programando para Internet » PHP »

guardar en base de datos mysql

Estas en el tema de guardar en base de datos mysql en el foro de PHP en Foros del Web. Estimados, tengo un select el cual toma datos desde una tabla mysql, pero no tengo la posibilidad de guardar otro valor que no sea el ...
  #1 (permalink)  
Antiguo 04/01/2012, 08:07
 
Fecha de Ingreso: noviembre-2011
Mensajes: 121
Antigüedad: 12 años, 5 meses
Puntos: 0
guardar en base de datos mysql

Estimados, tengo un select el cual toma datos desde una tabla mysql, pero no tengo la posibilidad de guardar otro valor que no sea el "value" del select, y necesito guardar tanto el ID que va en el "value" como el nombre del producto, que es el que se muestra al usuario...

alguna idea de como hacerlo?
  #2 (permalink)  
Antiguo 04/01/2012, 08:20
Avatar de charlyalegret  
Fecha de Ingreso: septiembre-2011
Ubicación: Barcelona
Mensajes: 705
Antigüedad: 12 años, 6 meses
Puntos: 140
Respuesta: guardar en base de datos mysql

si tienes un formulario, puedes enviar tantos datos como quieras. Basta con tener inputs tipo hidden y el name y value que quieras.
ej:
<FORM ACTION="loquesea.php" METHOD="POST">
<SELECT NAME="hola" MULTIPLE>
etcetc
</SELECT>
<input type="hidden" name="id" value="valordelid">
<input type="hidden" name="nombredelproducto" value="nombredelproducto">
<input type="submit">
</form>

luego por post recoges las variables "hola" del select, "id" y "nombreproducto" con los values que le hayas dado (supogo que de la tabla mysql).

Saludos
  #3 (permalink)  
Antiguo 04/01/2012, 08:52
 
Fecha de Ingreso: julio-2010
Mensajes: 393
Antigüedad: 13 años, 8 meses
Puntos: 67
Respuesta: guardar en base de datos mysql

Ok, jugando un poco al adivino (por que no se entiende tu pregunta), veo que tienes una tabla llamada productos o algo asi con los campos id y nombre. Haces un select a la tabla productos y dibujas un dropdown, luego quieres guardar el value y el text de ese select en otra tabla?

Si mi teoría es correcta, no te recomiendo hacerlo pues no cumple con las reglas de normalización.

Pero si decides hacerlo... ¿Por qué no agregas un nuevo campo en tu tabla para guardar el text?

Saludos!
__________________
Páginas web de alta calidad y hechas a la medida.
  #4 (permalink)  
Antiguo 04/01/2012, 10:41
Avatar de charlyalegret  
Fecha de Ingreso: septiembre-2011
Ubicación: Barcelona
Mensajes: 705
Antigüedad: 12 años, 6 meses
Puntos: 140
Respuesta: guardar en base de datos mysql

Anda, veo que se me ha ido un poco y he malinterpretado completamente la pregunta!
  #5 (permalink)  
Antiguo 04/01/2012, 11:30
 
Fecha de Ingreso: noviembre-2011
Mensajes: 121
Antigüedad: 12 años, 5 meses
Puntos: 0
Respuesta: guardar en base de datos mysql

Cita:
Iniciado por charlyalegret Ver Mensaje
si tienes un formulario, puedes enviar tantos datos como quieras. Basta con tener inputs tipo hidden y el name y value que quieras.
ej:
<FORM ACTION="loquesea.php" METHOD="POST">
<SELECT NAME="hola" MULTIPLE>
etcetc
</SELECT>
<input type="hidden" name="id" value="valordelid">
<input type="hidden" name="nombredelproducto" value="nombredelproducto">
<input type="submit">
</form>

luego por post recoges las variables "hola" del select, "id" y "nombreproducto" con los values que le hayas dado (supogo que de la tabla mysql).

Saludos
ok, este es el codigo que tengo para el select, que tengo dentro de un graaaaaaaan formulario (en realidad no es id y producto, sino que numero de operacion y proyecto, pero es lo mismo)

Código PHP:
<select name="cod_proy">
  <option value="">Seleccione un Proyecto...</option>
  <?php
do {  
?>
  <option value="<?php echo $row_proyectos['noper']?>"><?php echo $row_proyectos['proy']?></option>
  <?php
} while ($row_proyectos mysql_fetch_assoc($proyectos));
  
$rows mysql_num_rows($proyectos);
  if(
$rows 0) {
      
mysql_data_seek($proyectos0);
      
$row_proyectos mysql_fetch_assoc($proyectos);
  }
?>
</select>
ahora, tu me dices que haga un

<input type="hidden" name="cod_proy" value="valordelid">
<input type="hidden" name="proyecto" value="nombredelproducto">

y ahi quedé... pq en codigo conozco poco o nada...
  #6 (permalink)  
Antiguo 04/01/2012, 15:30
Avatar de charlyalegret  
Fecha de Ingreso: septiembre-2011
Ubicación: Barcelona
Mensajes: 705
Antigüedad: 12 años, 6 meses
Puntos: 140
Respuesta: guardar en base de datos mysql

mmmmm.... sigo sin verlo claro .....
Aquí cuando escogen el proyecto con el select, qué pasa?
Es decir... ¿es un formulario, que luego enviará por get o por post el $row_proyectos['proy'] que escojan?
Entonces, en el archivo donde proceses esa información, no puedes hacer una consulta a la base de datos para sacar el resto de datos, a partir de ese valor que han escogido? Esto, suponiendo que los valores de numero de operacion y proyecto dependan de la selección que han hecho...

O a lo mejor me estoy haciendo un lio con lo que buscas y no nos entendemos... para entender mejor como funcionan los select y como se recogen las variables, puedes mirarte el siguiente artículo: http://www.desarrolloweb.com/articulos/1576.php

Saludos!

Última edición por charlyalegret; 04/01/2012 a las 15:37 Razón: me he hecho un lio :P

Etiquetas: mysql, tabla, usuarios
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 00:27.