Foros del Web » Programando para Internet » PHP »

Problema al convertir un Select a php

Estas en el tema de Problema al convertir un Select a php en el foro de PHP en Foros del Web. Buenas, tengo un pequeño problema y la verdad es que no entiendo que es lo que está mal, yo tenía el siguiente Select. Código PHP: ...
  #1 (permalink)  
Antiguo 05/05/2017, 05:07
 
Fecha de Ingreso: marzo-2013
Mensajes: 79
Antigüedad: 11 años
Puntos: 2
Problema al convertir un Select a php

Buenas, tengo un pequeño problema y la verdad es que no entiendo que es lo que está mal, yo tenía el siguiente Select.

Código PHP:
                        <?php
echo'
<select name="taric6" style="width: 108px;">
   <option selected value="'
.$taric6.'"> '.$nombre_taric6.' </option>  
       <optgroup label="codigo">
       <option value="0">vacio</option> 
       <option value="1">Azulejos</option> 
       <option value="2">Cementos</option> 
       <option value="3">Expositores de aluminio</option>
       <option value="4">Paneles Aglomerados</option>
   </optgroup> 
</select>'
;
?>
lo puse así porque en principio solo iban a ser 4 codigos los necesarios, pero como ahora hay mas de 20, decidí recorrer la tabla de los códigos de esta manera.

Código PHP:
<?php
echo'<select name="taric" style="width: 108px;">
   <option selected value="'
.$taric.'"> '.$nombre_taric.' </option>
   <optgroup label="codigo">'
;
    
$codigos1 mysql_query("SELECT * FROM codigo ORDER BY id_taric ASC") or die("Error de MySQL calidad: "mysql_error());
            while (
$valor1 mysql_fetch_array($codigos1)) {
                
                
$nombre1 $valor1[1];
                
$id1 $valor1[0];
        
echo 
'
       <option value="'
.$id1.'">'.$nombre1.'</option> ';
        }
echo
'
   </optgroup> 
</select>'
;
?>
  #2 (permalink)  
Antiguo 05/05/2017, 06:23
 
Fecha de Ingreso: julio-2014
Mensajes: 334
Antigüedad: 9 años, 9 meses
Puntos: 30
Respuesta: Problema al convertir un Select a php

Moredadores, seria genial una seccion de obligada lectura a todos los miembros para configurar php para el desarrollo activando error_reporting y display_errors y consultar antes el manual de php en español antes de realizar cualquier consulta.

Si tuvieses eso configurado para reportar errores de programacion, estarias solucionando problemas mucho mas rapido.

Te aconsejo esta entrada: http://php.net/manual/es/mysql.examples-basic.php

Aunque tambien te recomiendo que no utilizes mysql y uses mysqli, solo vas a tener que añadir una "i" a mysql y cambiar el orden de los parametros para la conexion y las consultas.
  #3 (permalink)  
Antiguo 05/05/2017, 12:01
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Problema al convertir un Select a php

Cuál es el problema?, hay diferencia en el HTML generado o qué es lo que no funciona?
__________________
- León, Guanajuato
- GV-Foto
  #4 (permalink)  
Antiguo 08/05/2017, 02:28
 
Fecha de Ingreso: marzo-2013
Mensajes: 79
Antigüedad: 11 años
Puntos: 2
Respuesta: Problema al convertir un Select a php

Cita:
Iniciado por Triby Ver Mensaje
Cuál es el problema?, hay diferencia en el HTML generado o qué es lo que no funciona?
el problema es que antes si yo seleccionaba el valor 1 azulejos por ejemplo, por post me pasaba el 1 y se guardaba bien.

al cambiar esto seleccione el que seleccione, pasa el valor 0
  #5 (permalink)  
Antiguo 08/05/2017, 10:14
 
Fecha de Ingreso: julio-2014
Mensajes: 334
Antigüedad: 9 años, 9 meses
Puntos: 30
Respuesta: Problema al convertir un Select a php

Cita:
Iniciado por kidinshell Ver Mensaje
el problema es que antes si yo seleccionaba el valor 1 azulejos por ejemplo, por post me pasaba el 1 y se guardaba bien.

al cambiar esto seleccione el que seleccione, pasa el valor 0
Y ya le has hecho un var_dump() al array que te devuelve la consulta para saber porque siempre te imprime 0 en $id1?
  #6 (permalink)  
Antiguo 08/05/2017, 17:14
Avatar de KATHYU  
Fecha de Ingreso: julio-2013
Mensajes: 547
Antigüedad: 10 años, 9 meses
Puntos: 46
Respuesta: Problema al convertir un Select a php

Yo lo que te puedo aconsejar es que no unas código HTML con PHP, separalos.

Código PHP:
Ver original
  1. <select class="form-control" style="height: 40px;" name="contrato" id="contrato" >
  2.   <!-- Estas Variables vienen de tu selecte maestro -->
  3.   <option value="<?php echo $contrato; ?>"><?php echo $contrato; ?></option>
  4.   <?php
  5.     $contrato = $mysqli->query("SELECT id,nombre FROM tipo_contrato ORDER BY nombre");
  6.     while ($row = $contrato->fetch_array(MYSQLI_ASSOC)) {
  7.   ?>
  8.     <option value="<?php echo $row['id']; ?>"><?php echo $row['nombre']; ?></option>
  9.   <?php
  10.     }
  11.   ?>
  12. </select>

Incluso en el código anterior podemos meter los $row['id']; en variables $id = row['id']; y seria bastante bueno.

Y claro que habilites los errores, veas el código HTML generado y hagas var_dump()
__________________
Al contrario de lo que muchos podrían afirmar, ayudar no te hace pobre, sino más rico.
  #7 (permalink)  
Antiguo 08/05/2017, 20:22
jhonnyalexander_91
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema al convertir un Select a php

Cita:
Iniciado por KATHYU Ver Mensaje
Yo lo que te puedo aconsejar es que no unas código HTML con PHP, separalos.

Código PHTML:
Ver original
  1. <select class="form-control" style="height: 40px;" name="contrato" id="contrato" >
  2.   <!-- Estas Variables vienen de tu selecte maestro -->
  3.   <option value="<?php echo $contrato; ?>"><?php echo $contrato; ?></option>
  4.   <?php
  5.     $contrato = $mysqli->query("SELECT id,nombre FROM tipo_contrato ORDER BY nombre");
  6.     while ($row = $contrato->fetch_array(MYSQLI_ASSOC)) {
  7.   ?>
  8.     <option value="<?php echo $row['id']; ?>"><?php echo $row['nombre']; ?></option>
  9.   <?php
  10.     }
  11.   ?>
  12. </select>

Incluso en el código anterior podemos meter los $row['id']; en variables $id = row['id']; y seria bastante bueno.

Y claro que habilites los errores, veas el código HTML generado y hagas var_dump()
Metiendo un poco la cucharada y sin dar solución al error, quiero añadir una sugerencia que quizá permita mejorar la legibilidad del código. Por supuesto, estoy de acuerdo en no mezclar HTML con PHP, sin embargo, en el caso de que el programador desee hacerlo, sugiero usar [URL="https://secure.php.net/manual/en/control-structures.alternative-syntax.php"]la sintaxis alternativa para estructuras[/URL]:

Código PHP:
Ver original
  1. <select class="form-control" style="height: 40px;" name="contrato" id="contrato"
  2.     <!-- Estas Variables vienen de tu selecte maestro -->
  3.     <option value="<?= $contrato ?>"><?= $contrato ?></option>
  4.     <?php $contrato = $mysqli->query("SELECT id,nombre FROM tipo_contrato ORDER BY nombre") ?>
  5.     <?php while (list ($id, $nombre) = $contrato->fetch_array(MYSQLI_ASSOC)) : ?>
  6.         <option value="<?= $id ?>"><?= $nombre ?></option>
  7.     <?php endwhile; ?>
  8. </select>

Con respecto al problema concreto, me gustaría entender el contexto, ya que es muy extraño que use una agrupación de opciones en un desplegable que no parece estar muy "categorizado" y que además tiene una opción por fuera de "las categorías", casi parecería que no tiene mucho que ver con el desplegable.
  #8 (permalink)  
Antiguo 09/05/2017, 09:33
Avatar de KATHYU  
Fecha de Ingreso: julio-2013
Mensajes: 547
Antigüedad: 10 años, 9 meses
Puntos: 46
Respuesta: Problema al convertir un Select a php

Cita:
Iniciado por jhonnyalexander_91 Ver Mensaje
Metiendo un poco la cucharada y sin dar solución al error, quiero añadir una sugerencia que quizá permita mejorar la legibilidad del código. Por supuesto, estoy de acuerdo en no mezclar HTML con PHP, sin embargo, en el caso de que el programador desee hacerlo, sugiero usar [URL="https://secure.php.net/manual/en/control-structures.alternative-syntax.php"]la sintaxis alternativa para estructuras[/URL]:
Muy bien, créame que lo tomare muy muy en cuenta
__________________
Al contrario de lo que muchos podrían afirmar, ayudar no te hace pobre, sino más rico.
  #9 (permalink)  
Antiguo 09/05/2017, 11:14
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Problema al convertir un Select a php

La única diferencia que veo entre los dos códigos es que el primer select es taric6 y el segundo es solo taric... podría ser eso?
__________________
- León, Guanajuato
- GV-Foto

Etiquetas: mysql, select, tabla
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 22:43.