Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   PHP (https://www.clubdelphi.com/foros/forumdisplay.php?f=15)
-   -   Tengo problema para mostrar informacion en un Combobox (https://www.clubdelphi.com/foros/showthread.php?t=50047)

dark_monk9 07-11-2007 01:58:32

Tengo problema para mostrar informacion en un Combobox
 
wenas a todos, tengo el siguiente codigo, no me genera ningun error pero no hace lo que debería.


Código PHP:

<select name="select_idactividad" id="select_idactividad">       //Combo box
                <option>&lt;Seleccionar&gt;</option>
                
                <?php
                
                    
include_once("eliminar.php");
                    
$db= new eliminar();
                    
$db->conectar();
                    
                    
$consulta "SELECT idactividad, nombre FROM actividad;";
                    if(
$result pg_Exec($db,$consulta)){
                        while (
$dato pg_fetch_array($result)){
                
?>
                  <option value ="<?php echo $dato['idactividad']; ?>" selected="selected"><?php echo $dato['nombre']; ?></option>
                  <?php        }
                }
                
?>

Se supone que me debería mostar la lista de los datos id actividad y nombre almacenados en la tabla actividad de la base de datos pero no me muestra nada, cual puede ser el error?

Gracias por la ayuda!!!

HenryAraniva 07-11-2007 02:08:02

Hola...
una pregunta Qué valor tiene $dato? y otra cosa, en el while si vas a hacer una comparación debes poner == de lo contrario estas asignando el valor que retorna "pg_fetch_array($result)" a la variable $dato.

dark_monk9 07-11-2007 02:15:30

$dato es donde voy a guardar el arreglo correspondiente a los ids de la actividad.
En caso de que este muy enredado me podrian dar un ejemplo diferente?

Intente meter otro codigo y nada:

<select name="select_idactividad" id="select_idactividad">
<option>&lt;Seleccionar&gt;</option>

<?php

$conexion = ("dbname=soft user=supia password=supia");
$conecta = pg_connect($conexion);
echo '';
$query_tiposerv = "SELECT idactividad FROM actividad";
$result=pg_query($query_tiposerv);
if ($row = pg_fetch_array($result))
{
echo '';
do {
echo ''.$row["idactividad"].'';
} while ($row = pg_fetch_array($result));
echo '';
}
?>

</select>

No se por qué razon no me despliega los valores referentes a los id

HenryAraniva 07-11-2007 02:59:33

<?php
$conexion = ("dbname=soft user=supia password=supia");
$conecta = pg_connect($conexion);
$query_tiposerv = "SELECT idactividad FROM actividad";
$result=pg_query($query_tiposerv);
$filas=pg_numrows($result);
if ($filas!=0)
{
for($i=0;$i<$filas;$i++)
{
$campo=pg_result($result,$i,0);// $i lleva el control de registros y el 0 indica el primer campo, si pones 1 será el segundo campo de la tabla.
echo"<select name= select_idactividad id= select_idactividad>
<option value=algo>$campo</option>";
}
}
?>
este sería un ejemplo, aunque creo que de tu codigo lo que esta mal es el while, ya que dentro de él debes poner una condición y no una asignación

dark_monk9 07-11-2007 03:16:45

con este ejemplo ya me queda claro cómo se hace pero tengo una duda sobre que debe de ir en las variables "algo". ademas no me funciona aun, no se me despliegan los ids

HenryAraniva 07-11-2007 03:33:08

en el ejemplo anterior me falto poner el </select>, donde puse value=algo, algo es la variable que te va a identificar esa opción, por ejemplo si fuera un combo que muestra productos, pondrias en el value el id del producto que es el que a tí te interesa para procesar los datos.ej:
<option value=01>"radio"</option>;
<option value=02>"televisor"</option>;
<option value=03>"dvd"</option>;
si esto lo tienes en un formulario cuando hagas un submit los datos que se envían son ya sea 01, 02 o 03 dependiendo si el usuario selecciono radio, televisor o dvd.

dark_monk9 07-11-2007 03:44:41

Espero que disculpen mi lentitud, pero ya implemente el código y cuando lo ejecuto al darle click al combo box para que se despliegue las opciones no aparece nada. Deberia aparecer los siguientes datos:
1
2
3
5
7
8

que son los que resulta de la consulta pero no aparecen. que estoy haciendo mal?

dark_monk9 07-11-2007 15:58:40

ya lo solucione:

<select name="select_idactividad" id="select_idactividad">
<option>&lt;Seleccionar&gt;</option>

<?php

$cnxString = "host=localhost port=5432 dbname=soft user=supia password=supia";
$dbc = pg_connect ($cnxString);

$consulta = "SELECT idactividad FROM actividad";
if($result = pg_Exec($dbc,$consulta)){
while ($dato = pg_fetch_array($result)){
?>
<option value ="<?php echo $dato['idactividad']; ?>" selected="selected"><?php echo $dato['idactividad']; ?></option>
<?php }
}
?>

</select>

queda asi, gracias a todos!


La franja horaria es GMT +2. Ahora son las 20:07:06.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi