Foros del Web » Programando para Internet » PHP »

No insertar codigo en combo box

Estas en el tema de No insertar codigo en combo box en el foro de PHP en Foros del Web. Hola amigos de foros del web tengo una consulta que hacerles en mi programa cuando edito un registro muestro la descripcion de un modelo desde ...
  #1 (permalink)  
Antiguo 22/05/2010, 15:07
Avatar de dquispe  
Fecha de Ingreso: mayo-2009
Ubicación: Lima
Mensajes: 232
Antigüedad: 14 años, 11 meses
Puntos: 0
De acuerdo No insertar codigo en combo box

Hola amigos de foros del web tengo una consulta que hacerles en mi programa cuando edito un registro muestro la descripcion de un modelo
desde otra tabla el detalle es que me guarda la descripcion de dicho modelo no el codigo.
Ayudenme amigos
Desearia mostrar la descripcion de dicho modelo y guardar en mi tabla dicho codigo de modelo es una consulta con join en este caso guarda la descripcion algo estoy haciendo mal.
En si la muestra la descripcion de dicho modelo pero no ingresa el codigo de modelo.
<select name="cbomodelose" id="cbomodelose">
<?php
$rmo=mysql_query("Select * from modelos order by cod_modelo");
while($fila_mo=mysql_fetch_array($rmo)){
echo "<option value='$fila_mo[0]'>$fila_mo[1]</option>";
}
$mod=mysql_query("SELECT c.num_celular, m.cod_modelo, m.descripcion_modelo
FROM celulares c
INNER JOIN modelos m ON c.cod_modelo = m.cod_modelo
WHERE c.num_celular=".$x);
while ($row_modelo=mysql_fetch_array($mod)) {
$modelo = $row_modelo["descripcion_modelo"];
echo "<option value=\"$modelo'>\"selected";
echo ">$modelo</option>";
}

?>
</select>
Nota son dos tablas.
Gracias apoyenme con este tema creia que etsaba solucionado pero fijandome bien en la primera parecia que agarraba pero nada.
Deberia registrar en mi otra tabla el codigo de modelo pero sin embargo cuando estiro el combo y selecciono otra descripcion lo guarda su codigo es algo muy raro.
Porque pasara eso.
  #2 (permalink)  
Antiguo 25/05/2010, 10:46
Avatar de dquispe  
Fecha de Ingreso: mayo-2009
Ubicación: Lima
Mensajes: 232
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: No insertar codigo en combo box

Doctores le meti un poco de mano al codigo pero nada

<?php
$rmo=mysql_query("Select * from modelos order by cod_modelo");
while($fila_mo=mysql_fetch_array($rmo)){
echo "<option value='$fila_mo[0]'>$fila_mo[1]</option>";
}
$mod=mysql_query("SELECT c.num_celular, m.cod_modelo, m.descripcion_modelo
FROM celulares c
INNER JOIN modelos m ON c.cod_modelo = m.cod_modelo
WHERE c.num_celular=".$x);
while ($row_modelo=mysql_fetch_array($mod)) {
$modelo = $row_modelo["descripcion_modelo"];
echo "<option value=\"$modelo\" selected>$modelo</option>";

}
  #3 (permalink)  
Antiguo 28/05/2010, 12:22
Avatar de wiwi74  
Fecha de Ingreso: marzo-2008
Mensajes: 515
Antigüedad: 16 años, 1 mes
Puntos: 10
Respuesta: No insertar codigo en combo box

Estoy medio perdido...


Podrias cambiar algunas cosas, a ver que pasa:


Código PHP:

$rmo
=mysql_query("Select * from modelos order by cod_modelo");
//array asociativo
while($fila_mo=mysql_fetch_array($rmo)){
//pon los nombres de los campos, en vez de 0 y 1
echo "<option value='$fila_mo[0]'>$fila_mo[1]</option>";
}

//revisa los alias, y las rutas que creas con ellos
//m.cod_modelo, m.descripcion_modelo no repites un alias..?
$mod=mysql_query("SELECT c.num_celular, m.cod_modelo, m.descripcion_modelo FROM  celulares c INNER JOIN modelos m ON c.cod_modelo = m.cod_modelo WHERE c.num_celular=".$x);


while (
$row_modelo=mysql_fetch_array($mod)) { 
//aca si usas un nombre de un campo ["descripcion_modelo"]
$modelo $row_modelo["descripcion_modelo"]; 
echo 
"<option value=\"$modelo\" selected>$modelo</option>";

  #4 (permalink)  
Antiguo 11/09/2010, 14:17
Avatar de dquispe  
Fecha de Ingreso: mayo-2009
Ubicación: Lima
Mensajes: 232
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: No insertar codigo en combo box

Ya lo logre modificar el codigo xD, pongo el codigo haber si ha alguien le sirve.
He estado mucho tiempo ausente vuelvo co0n fuerza.

<?
$val_celular=$_SESSION["lista_celularesb"];
$x=$val_celular[0]["num_celular"];
//script para el combo de los modelos
$sql_modelo = "
SELECT c.num_celular, m.cod_modelo, m.descripcion_modelo
FROM celulares c
INNER JOIN modelos m ON c.cod_modelo = m.cod_modelo
WHERE c.num_celular=".$x;

$resultado_sql_modelo = mysql_query($sql_modelo);
$fila_celular_modelo = mysql_fetch_assoc( $resultado_sql_modelo );

$sql_modelo = "
SELECT
cod_modelo
, descripcion_modelo
FROM
modelos
";
$resultado_sql_modelo = mysql_query($sql_modelo);
while( $fila_modelo= mysql_fetch_assoc( $resultado_sql_modelo ) ) {
$todos_modelos[$fila_modelo['cod_modelo']] = array(
'descripcion_modelo' => $fila_modelo['descripcion_modelo']
, 'seleccionado' => 0
);
}
$todos_modelos[$fila_celular_modelo['cod_modelo']]['seleccionado'] = 1;


?>
<td>Modelos</td>
<td><select name="cbomodelose" id="cbomodelose">
<?php foreach( $todos_modelos as $codigo_modelos => $datos_modelo ): ?>
<option value="<?php echo $codigo_modelos; ?>"
<?php if( $datos_modelo['seleccionado'] ) { echo 'selected="selected"'; } ?>
>
<?php
echo $codigo_modelos . ' - ' . $datos_modelo['descripcion_modelo'];
?>
</option>
<?php endforeach; ?>
</select></td>

Etiquetas: box, combo
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 03:23.