Foros del Web » Programando para Internet » PHP »

lista con combobox

Estas en el tema de lista con combobox en el foro de PHP en Foros del Web. Necesito cargar una lista de una bd a partirde un valor capturado e un campo ... Lo que se describe a continuacion funciona casi perfectamente ...
  #1 (permalink)  
Antiguo 10/07/2008, 15:06
Avatar de Superlinux  
Fecha de Ingreso: octubre-2005
Ubicación: Colombia
Mensajes: 662
Antigüedad: 18 años, 6 meses
Puntos: 1
Pregunta lista con combobox

Necesito cargar una lista de una bd a partirde un valor capturado e un campo ...
Lo que se describe a continuacion funciona casi perfectamente ... el inconveniente que presenta es que cuando se desea cambiar el dato encontrado esta no me lo permite ya que solo muestra el valor buscado.

Como le hago para que el combo no solo me encuentre el valor buscado .. si no tambien me permita lista los demas item de ese campo ... en caso de que desee darle otro valor al combox ???


Código PHP:

<?php
//referenciamos la clase DBManager
require('DBManager.php');

//variable GET
$ide=$_POST['numdoc'];

// consulta los empledos de la BD
//usamos el metodo conectar para realizar la conexion
$result=mysql_query("select d.nit FROM documentocp d WHERE d.numdoc = '".$ide."'",$con); 
$row mysql_fetch_array($result);

//valores de las consultas
$snit=$row['nit'];

//seleccionamos solo estilo de la tabla referencia
$sql=mysql_query("SELECT nit FROM beneficiario where nit = $snit",$con);

?>
<select class='combo' name='nit' style="background:#ffffff" onFocus="encender(this)" onBlur="apagar(this)" validationhint="required" validationmsg="El campo Beneficiario es de tipo obligatorio" onKeyPress="return tabular(event,this)">
<?php
while($row mysql_fetch_array($sql)){
    echo 
"<option value=\"".$row['nit']."\">".$row['nit']."</option> \n";
}
//Fin del while
?>
</select>
De ante mano gracias por la ayuda ---

bye
__________________
"La vida sigue su curso, tú toma parte de ella."
  #2 (permalink)  
Antiguo 10/07/2008, 15:16
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: lista con combobox

Hola Superlinux,

Quita la condición del WHERE en tu consulta SQL, con eso ya te mostrara toda la lista.

Saludos.
  #3 (permalink)  
Antiguo 10/07/2008, 15:44
Avatar de Superlinux  
Fecha de Ingreso: octubre-2005
Ubicación: Colombia
Mensajes: 662
Antigüedad: 18 años, 6 meses
Puntos: 1
Respuesta: lista con combobox

... No men .... mira esto fue lo que hice y no me funciono ..

Código PHP:

<?php
//referenciamos la clase DBManager
require('DBManager.php');

//variable GET
$ide=$_POST['numdoc'];

// consulta los empledos de la BD
//usamos el metodo conectar para realizar la conexion
$result=mysql_query("select d.nit FROM documentocp d WHERE d.numdoc = '".$ide."'",$con); 
$row mysql_fetch_array($result);

//valores de las consultas
$snit=$row['nit'];

//seleccionamos solo estilo de la tabla referencia
$sql=mysql_query("SELECT nit FROM beneficiario where nit = $snit",$con);

?>
<select class='combo' name='nit' style="background:#ffffff" onFocus="encender(this)" onBlur="apagar(this)" validationhint="required" validationmsg="El campo Beneficiario es de tipo obligatorio" onKeyPress="return tabular(event,this)">
<?php
//while($row = mysql_fetch_array($sql)){
    
$row mysql_fetch_array($sql);
    echo 
"<option value=\"".$row['nit']."\">".$row['nit']."</option> \n";
//}//Fin del while
?>
</select>
__________________
"La vida sigue su curso, tú toma parte de ella."
  #4 (permalink)  
Antiguo 10/07/2008, 15:50
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: lista con combobox

Debes de hacer lo que te dije de quitar la parte de WHERE de tu segunda consulta, si no por eso solo te muestra 1 solo elemento.

Saludos.
  #5 (permalink)  
Antiguo 10/07/2008, 15:59
Avatar de Superlinux  
Fecha de Ingreso: octubre-2005
Ubicación: Colombia
Mensajes: 662
Antigüedad: 18 años, 6 meses
Puntos: 1
Respuesta: lista con combobox

MMMM esa parte ya la habia hecho ... pero ahi un pequeño detalle

Asi deje la segunda

Código PHP:
//seleccionamos solo estilo de la tabla referencia
$sql=mysql_query("SELECT nit FROM beneficiario",$con); 
digamos que tengo estos beneficiarios

1
2
3
4
5
6

Pero paso con $ide=$_POST['numdoc']; el 4

Necesito que la lista se posicione en el 4 ... pero al mismo tiempo me deje ver el resto. Si quito el where me deja ver la lista pero no me posiciona en el 4

Gracias por la ayuda ---
__________________
"La vida sigue su curso, tú toma parte de ella."
  #6 (permalink)  
Antiguo 10/07/2008, 16:38
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: lista con combobox

Lo que pasa es que es a la hora de armar tu select donde debes de comparar el dato que venia de la otra pagina y agregarle el atributo de selected="selected".

Revisa en las FAQs del foro y podrás entender más como pre-seleccionar la opción.

Saludos.
  #7 (permalink)  
Antiguo 14/07/2008, 15:13
Avatar de Superlinux  
Fecha de Ingreso: octubre-2005
Ubicación: Colombia
Mensajes: 662
Antigüedad: 18 años, 6 meses
Puntos: 1
Hola GatorV me podrias ayudar expecificando el ejemplo del selected="selected". presente en la FAQs que no la encuentro ... gracias ...

Hola GatorV me podrias ayudar expecificando el ejemplo del selected="selected". presente en la FAQs que no la encuentro ... gracias ..

.. por fin ... ahi dejo el codigo para quien lo necesite ... bye

Gracias....

Código PHP:
<?php
//referenciamos la clase DBManager
require('DBManager.php');

// consulta el detalle de la factura
//usamos el metodo conectar para realizar la conexion
$result=mysql_query("SELECT nitcontab FROM contabilizacioncp WHERE idcont ='".$ide."'",$con); 
$row mysql_fetch_array($result);

//seleccionamos solo estilo de la tabla referencia
$sql=mysql_query("SELECT nit FROM beneficiario order by nit",$con);

?>
<select class='combo' name='nit' style="background:#ffffff" onFocus="encender(this)" onBlur="apagar(this)" validationhint="required" validationmsg="El campo CU es de tipo obligatorio" onKeyPress="return tabular(event,this)">
<?php
    
echo "<option value=\"".$idnit."\">".$idnit."</option>"
?>
<?php
while($row mysql_fetch_array($sql)){
    echo 
"<option value=\"".$row['nit']."\">".$row['nit']."</option> \n";
}
//Fin del while
?>
</select>
__________________
"La vida sigue su curso, tú toma parte de ella."

Última edición por GatorV; 01/08/2008 a las 15:26
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 08:10.