Ver Mensaje Individual
  #8 (permalink)  
Antiguo 05/06/2013, 10:25
Avatar de wizanchez
wizanchez
 
Fecha de Ingreso: junio-2013
Ubicación: bogota
Mensajes: 120
Antigüedad: 11 años, 5 meses
Puntos: 6
Respuesta: lista de seleccion multiple dinamica con opcion selected="selected

seria algo asi:
Código PHP:
Ver original
  1. <?PHp  
  2. mysql_select_db($database_cnxGestor, $cnxGestor);
  3.  
  4. $query_ListaIdiomas     = "SELECT * FROM lista_idiomas ORDER BY id_idioma ASC";
  5. $ListaIdiomas           = mysql_query($query_ListaIdiomas, $cnxGestor) or die(mysql_error());
  6. $row_ListaIdiomas       = mysql_fetch_assoc($ListaIdiomas);
  7. $totalRows_ListaIdiomas = mysql_num_rows($ListaIdiomas);
  8.  
  9.  ?>
  10.  
  11.   <select multiple name="idiomaSelect[]">
  12.   <?PHp
  13. while ($fila = mysql_fetch_array($ListaIdiomas, MYSQL_ASSOC)) {
  14.    
  15.     $v_result   =consultar_idioma($fila["id_idioma"]);
  16.  
  17.     $v_select   =$v_result===false?' selected="selected" ':'';
  18.  
  19.   ?> <option value="<?php echo $fila['id_idioma']; ?>" <?PHp echo $v_select;?> ><?php echo $fila['nombre_idioma']; ?></option><?Php
  20. }
  21.  
  22.   ?>
  23. </select>
  24. <?PHp
  25.  
  26.  
  27. function consultar_idioma($id_idioma)
  28.     {
  29.  
  30.     global  $database_cnxGestor, $cnxGestor;
  31.  
  32.         mysql_select_db($database_cnxGestor, $cnxGestor);
  33.         $query_idiomas = "SELECT
  34.                                 *
  35.                             FROM
  36.                                 idiomas
  37.                             where
  38.                                 id_idioma='".$id_idioma."'";
  39.         $idiomas        = mysql_query($query_idiomas, $cnxGestor) or die(mysql_error());
  40.          
  41.  
  42.         $totalRows_idiomas = mysql_num_rows($idiomas);
  43.  
  44.         return      $totalRows_idiomas==0?false;true;
  45.     }
  46.  
  47. ?>

- lo que vi es que jamas estas preguntando si el idioma esta en la lista de idiomas.
-te arregle un poco el codigo
-tambien podes hacerlo en php con un in_array(), todo depende de las probabilidades de usuario,