Foros del Web » Programando para Internet » PHP »

SELECT Combo, PHP, Mysql

Estas en el tema de SELECT Combo, PHP, Mysql en el foro de PHP en Foros del Web. Buenos dias a tod@s, Tengo el siguiente problema: En un SELECT cargo lo siguiente: Código HTML: <SELECT NAME= "selRespon" SIZE=1"> <? $query="SELECT Nombre FROM Responsables"; ...
  #1 (permalink)  
Antiguo 02/04/2009, 08:37
 
Fecha de Ingreso: octubre-2008
Mensajes: 112
Antigüedad: 15 años, 6 meses
Puntos: 0
SELECT Combo, PHP, Mysql

Buenos dias a tod@s,

Tengo el siguiente problema:

En un SELECT cargo lo siguiente:

Código HTML:
<SELECT NAME="selRespon" SIZE=1">
     
   <?
   $query="SELECT Nombre FROM Responsables";
   $link=mysql_connect($server,$dbuser,$dbpass);
   $result=mysql_db_query($database,$query,$link);
   while ($row=mysql_fetch_array($result))
   {
   ?>
   <OPTION VALUE="<?php echo $row['Nombre'] ?>"><?php echo $row['Nombre'] ?></OPTION>
   <?}?>
   </SELECT> 
Lo cual me carga perfectamente los responsables...pero me gustaria que en el combo se cargue el Responsable que ya tiene elegido el Usuario.

Hay un campo idResponsable que relaciona las tablas Responsables y UsuarioConfig.
Alguna idea de como hacerlo...
  #2 (permalink)  
Antiguo 02/04/2009, 08:45
 
Fecha de Ingreso: febrero-2009
Ubicación: cancun!
Mensajes: 898
Antigüedad: 15 años, 2 meses
Puntos: 15
Respuesta: SELECT Combo, PHP, Mysql

if ($row2['campo1']==$row2['campo2'])

se me ocurre q compares los campos y cuando sean = lo pones en selected
<OPTION VALUE="<?php echo $row['Nombre'] ?>selected><?php echo $row['Nombre'] ?></OPTION>

espero te sirva saludines!!
__________________
WHERE IS MY BLUE SUNNY SKY??
pd: todos los karmas son bienvenidos :D
  #3 (permalink)  
Antiguo 02/04/2009, 08:58
 
Fecha de Ingreso: octubre-2008
Mensajes: 112
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: SELECT Combo, PHP, Mysql

He echo unas cuantas pruebas...sin exito. De todas maneras en la SELECT SQL tendria que recoger los 3 valores supongo Nombre Empleado, Id Responsable, e IdResponsable de la otra tabla. Para poder compararlos no ??
  #4 (permalink)  
Antiguo 02/04/2009, 09:03
 
Fecha de Ingreso: febrero-2009
Ubicación: cancun!
Mensajes: 898
Antigüedad: 15 años, 2 meses
Puntos: 15
Respuesta: SELECT Combo, PHP, Mysql

tienes dos tablas me supongo responsables y empleados
ellos deben tener un campo en comun ese es el q tomaras para comparacion
responsable.campoigual ==empleado.campoigual // es un ejemplo no iria asi en la query

yo lo q hice fue hacer las dos querys a mis tablas
y de ahi con row1 y row2 comparo

espero haberme dado a entender saludines!!
__________________
WHERE IS MY BLUE SUNNY SKY??
pd: todos los karmas son bienvenidos :D
  #5 (permalink)  
Antiguo 02/04/2009, 09:51
 
Fecha de Ingreso: octubre-2008
Mensajes: 112
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: SELECT Combo, PHP, Mysql

si si entiendo lo que dices lo he conseguido hacer todo en una sentencia SQL para evitar mas codigo y tal...lo unico que claro...solo me muestra el ELEGIDO es decir...quiero que por defecto muestre el que ya tiene elegido y los demas del combo...pero solo muestra el que tiene elegido.
El codigo aqui:

Código PHP:
<SELECT NAME="selRespon" SIZE=1">
<?
$query
="SELECT Nombre,idRespon FROM Responsables WHERE idRespon=(select idRespon from Config where UserDNI='$username')";
$link=mysql_connect($server,$dbuser,$dbpass);
$result=mysql_db_query($database,$query,$link);
while (
$row=mysql_fetch_array($result))
 {
?>
   
   <OPTION VALUE="<?php echo $row['Nombre'?>"<?php if ($row['Responsables.idRespon'] == $row['Config.idRespon']) echo 'selected="selected"' ?>><?php echo $row['Nombre'?></OPTION>
        
   <?}?>
   </SELECT>
  #6 (permalink)  
Antiguo 02/04/2009, 10:03
 
Fecha de Ingreso: febrero-2009
Ubicación: cancun!
Mensajes: 898
Antigüedad: 15 años, 2 meses
Puntos: 15
Respuesta: SELECT Combo, PHP, Mysql

<select name="copia" id="copia" style="background-color:#EBEBEB">
<option value="Sin" selected>Sin Copia</option>

//ese es mi primer select normal


<?php
$tabla = mysql_query('SELECT * FROM usuarios order by abogado');
while($row=mysql_fetch_array($tabla)){
?>
<option value="<?php echo($row['correo'])?>"><?php echo($row['abogado'])?></option>
</select>

le puedes poner dos option value!!
saludines!!
__________________
WHERE IS MY BLUE SUNNY SKY??
pd: todos los karmas son bienvenidos :D
  #7 (permalink)  
Antiguo 03/04/2009, 01:25
 
Fecha de Ingreso: octubre-2008
Mensajes: 112
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: SELECT Combo, PHP, Mysql

lo siento pero no entiendo k me dices en este ultimo apartado...me muestras un combo con una lista...pero no es eso lo que yo te muestro ahi.
  #8 (permalink)  
Antiguo 03/04/2009, 09:15
 
Fecha de Ingreso: febrero-2009
Ubicación: cancun!
Mensajes: 898
Antigüedad: 15 años, 2 meses
Puntos: 15
Respuesta: SELECT Combo, PHP, Mysql

Cita:
<SELECT NAME="selRespon" SIZE=1">
<?
$query="SELECT Nombre,idRespon FROM Responsables WHERE idRespon=(select idRespon from Config where UserDNI='$username')";
$link=mysql_connect($server,$dbuser,$dbpass);
$result=mysql_db_query($database,$query,$link);
while ($row=mysql_fetch_array($result))
{?>

<OPTION VALUE="<?php echo $row['Nombre'] ?>"<?php if ($row['Responsables.idRespon'] == $row['Config.idRespon']) echo 'selected="selected"' ?>><?php echo $row['Nombre'] ?></OPTION>

<?}?>
</SELECT>
dices q con ese codigo solo te muestra el q esta = o seleccionado yo te mencione que aparte de ese "value"le puedes poner uno mas donde te muestre todos los demas

Cita:
<select name="copia" id="copia" style="background-color:#EBEBEB">//abroselect
<option value="Sin" selected>Sin Copia</option>//primer value y q aparecera seleccionado
$tabla = mysql_query('SELECT * FROM usuarios order by abogado'); //mi consulta siempre dentro del select
while($row=mysql_fetch_array($tabla)){
?>
<option value="<?php echo($row['correo'])?>"><?php echo($row['abogado'])?></option>//mi otro value
</select>// cierrro select
saludines!!
__________________
WHERE IS MY BLUE SUNNY SKY??
pd: todos los karmas son bienvenidos :D
  #9 (permalink)  
Antiguo 06/04/2009, 03:16
 
Fecha de Ingreso: octubre-2008
Mensajes: 112
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: SELECT Combo, PHP, Mysql

esa opcion no es valida ya que repetiria el Responsable, saldrian todos mas repetido ese.

A alguien se le ocurre alguna otra manera ??
  #10 (permalink)  
Antiguo 06/04/2009, 07:41
 
Fecha de Ingreso: febrero-2009
Ubicación: cancun!
Mensajes: 898
Antigüedad: 15 años, 2 meses
Puntos: 15
Respuesta: SELECT Combo, PHP, Mysql

mira te voy a dar mi version si no lo has probado yo te digo que funciona a la perfeccion y no me repite el registro puesto que es la misma tabla
pero espero encuentres lo que buscas saludos!
__________________
WHERE IS MY BLUE SUNNY SKY??
pd: todos los karmas son bienvenidos :D
  #11 (permalink)  
Antiguo 06/04/2009, 08:33
 
Fecha de Ingreso: octubre-2008
Mensajes: 112
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: SELECT Combo, PHP, Mysql

por supuesto k lo he probado...y me repite el registro...k kieres un pantallazo tambien ??

Alguna sugerencia alguien por ahi ??
  #12 (permalink)  
Antiguo 07/04/2009, 01:53
 
Fecha de Ingreso: octubre-2008
Mensajes: 112
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: SELECT Combo, PHP, Mysql

Bueno al final me respondo a mi mismo, pero seguramente a mas de uno le valga lo siguiente:

Código PHP:
$query="SELECT idResponsable from Users WHERE username='$username'";
   
$link=mysql_connect($server,$dbuser,$dbpass);
   
$result=mysql_db_query($database,$query,$link);
   while (
$row=mysql_fetch_array($result))
   {
   
$idResponUser=$row['idResponsable'];
   }
   
   
$query="SELECT idResponsable,Nombre FROM Responsables";
   
$link=mysql_connect($server,$dbuser,$dbpass);
   
$result=mysql_db_query($database,$query,$link);
   while (
$row=mysql_fetch_array($result))
   {
   if (
$row['idResponsable']==$idResponUser) {
        echo 
"<option value=\"".$row['Nombre']."\" selected>".$row['Nombre']."</option>";
    } else {
        echo 
"<option value=\"".$row['Nombre']."\">".$row['Nombre']."</option>";
   }
   }
?> 
Saludos y Gracias,
  #13 (permalink)  
Antiguo 10/11/2009, 01:04
 
Fecha de Ingreso: noviembre-2009
Mensajes: 6
Antigüedad: 14 años, 5 meses
Puntos: 0
De acuerdo Respuesta: SELECT Combo, PHP, Mysql

Excelente! Tu código fue de mucha ayuda, me había estado matando para una aplicación que tenia que presentar, ya me había resignado a tener que presentarla con el problema, pero justo encontré este post.

  #14 (permalink)  
Antiguo 10/11/2009, 01:36
Avatar de oachon  
Fecha de Ingreso: mayo-2005
Mensajes: 62
Antigüedad: 18 años, 11 meses
Puntos: 1
Respuesta: SELECT Combo, PHP, Mysql

podrias hacerlo de esta forma tambien, solo en el option

Código PHP:

if ($row['idResponsable']==$idResponUser) { $sel "selected"; } else { $sel ""; }
        
echo 
"<option value=\"".$row['Nombre']."\"  $sel >".$row['Nombre']."</option>"
__________________
Quitenme todo... menos mis ganas de soñar..
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 20:28.