Ver Mensaje Individual
  #14 (permalink)  
Antiguo 26/06/2013, 15:24
Avatar de Raziel_Ravenheart
Raziel_Ravenheart
 
Fecha de Ingreso: agosto-2011
Ubicación: Ibagué, Tolima
Mensajes: 192
Antigüedad: 12 años, 8 meses
Puntos: 37
Información Respuesta: Muestre checkbox cuando se seleccione item

Mira, por fin pude volver, te organicé un poco el código y te hice unos comentarios, para que los leas. Por lo que veo ya están utilizando consultas algo complejas en mysql y eso me parece muy bien.

Código PHP:
Ver original
  1. <?php
  2. // Después del session_start() te hace falta cerrar la etiqueta de php
  3. ?>
  4. <!DOCTYPE html>
  5. <html lang="es">
  6.     <head>
  7.         <meta charset="utf-8" />
  8.         <!-- Se llama el archivo  estilo.css, se encarga de manejar el estilo. -->
  9.         <link type="text/css" rel="stylesheet" href="estilo.css">
  10.  
  11.         <!-- Se llama el archivo  js/Ajax.js este archivo contiene las funciones de validaciones -->
  12.         <script language="JavaScript" type="text/javascript" src="js/funciones.js"></script>       
  13.     </head>
  14.  
  15.     <body>
  16.         <form name="documento" action="Consul.php" method="post">
  17.         <?php
  18.         require("Conexion.php");
  19.         $codigo_area = $_SESSION['Area'];
  20.         $id = $_SESSION['Cod.Persona'];
  21.         $palabra = $_POST['clave'];
  22.        
  23.         /*
  24.             En la siguiente variable, $consultaextra, estás utilizando la variable $clave para hacer una búsqueda
  25.             de documentos.  Donde la declaraste? o es la variable $palabra la que necesitas poner ahí, la cual
  26.             es lo mismo que $_POST['clave']
  27.         */
  28.         $consultaextra = "select `Cod.Doc` from `firma_conocimiento` where `Cod.Doc` like '%$clave%'";
  29.         $ejecutarextra = mysql_query($consultaextra,$Conexion) or die ('Error en la parte de la consulta extra '.mysql_error());
  30.         $conut = mysql_num_rows($ejecutarextra);
  31.  
  32.         if($conut == 1){
  33.      
  34.             $subconsulta = "select d.`Codigo`, d.`Nombre`, d.`Adjunto`, ad.`Cod.Area`, d.`Version`
  35.             from `datos` d
  36.             inner join  area_documento ad
  37.             on d.`Codigo`= ad.`Cod.Doc`
  38.             inner join `firma_conocimiento` fir on d.`Codigo`=fir.`Cod.Doc`
  39.             where ad.`Cod.Area`= '$codigo_area' and d.`Codigo` like '%$clave%' and `Verificacion`=''
  40.             group by ad.`Cod.Doc`
  41.             order by ad.`Cod.Doc`";
  42.            
  43.             $executable = mysql_query($subconsulta,$Conexion) or die('Error en la parte de la subconsulta '.mysql_error());
  44.    
  45.             echo '<script language="javascript">alert("Ya firmo el procedimiento!");</script>';
  46.  
  47.         }else if($conut == 0){
  48.  
  49.             $q_query = "select  d.`Codigo`, d.`Nombre`, d.`Adjunto`, ad.`Cod.Area`, d.`Version`
  50.             from `datos` d
  51.             inner join  area_documento ad
  52.             on d.`Codigo`= ad.`Cod.Doc`
  53.             where ad.`Cod.Area`= '$codigo_area' and d.`Codigo` like '%$clave%'
  54.             group by ad.`Cod.Doc`
  55.             order by ad.`Cod.Doc` asc";
  56.            
  57.             $result = mysql_query($q_query,$Conexion) or die (mysql_error());
  58.             $cant_rows = mysql_num_rows($result);
  59.  
  60.             if($cant_rows > 0){
  61.         ?>
  62.                 <center><h3>Escriba el codigo del procedimiento a leer:
  63.                 <?php                                              
  64.                 echo "<select name='lista' id='lista' >";                                            
  65.                 echo "<option value='0'>Seleccionar Documento</option>";    
  66.              
  67.                 while($row_rs_query = mysql_fetch_assoc($result)){                                                        
  68.                     echo "<option value = '".$row_rs_query['Adjunto']."'>".$row_rs_query['Adjunto']."</option>";              
  69.                 }
  70.                 echo "</select>";
  71.  
  72.             }else if($cant_rows == 0) {
  73.                 echo "<center><h3>No se encontraron resultados</h3></center>";
  74.             }
  75.        
  76.         }else {
  77.             /*
  78.             En la sentencia where de esta consulta, cuando consultad por d.`Codigo` es por cualquiera o te hace falta una
  79.             variable?
  80.             */
  81.             $select = "select  d.`Codigo`, d.`Nombre`, d.`Adjunto`, ad.`Cod.Area`, d.`Version`
  82.             from `datos` d
  83.             inner join  area_documento ad
  84.             on d.`Codigo` = ad.`Cod.Doc`
  85.             inner join `firma_conocimiento` fir
  86.             on d.`Codigo`=fir.`Cod.Doc`
  87.             where ad.`Cod.Area`= 13 and d.`Codigo` like '%%' and `Verificacion`=''
  88.             group by ad.`Cod.Doc`
  89.             order by ad.`Cod.Doc`";
  90.            
  91.             $executeSelect = mysql_query($select,$Conexion) or die ('Error en la parte de $select '.mysql_error());
  92.    
  93.             echo '<script language="javascript">alert("Debe escribir algun codigo de procedimiento");</script>';
  94.         }
  95.         ?>
  96.         </form>
  97.     </body>
  98. </html>


Por el lado del javascript también le eliminé los comentarios, que puedes leer en el primer comentario en que los dejé, trata de revisar que el nombre de la función "Carga_file", este bien, tanto dentro del window.onload, como cuando se declara la misma función, o sea que la letra "C" sea mayúscula y el resto minúscula.

También me di cuenta que había cometido un error en la función carga file, donde declaro la variable contenedor, en las lineas siguiente va es esa variable que es una referencia al formulario, y no la palabra
"parentNode", aquí está corregido:

Código Javascript:
Ver original
  1. window.onload = function ()
  2. {
  3.     document.getElementById('lista').addEventListener( "change", Carga_file, false);
  4. }
  5.  
  6. function Carga_file (evt)
  7. {
  8.     var select = evt.target;    
  9.     var ruta_file = select.value  
  10.     var dir = "archivos/";    
  11.     var br = document.createElement('br');
  12.     var checkbox = document.createElement('input');
  13.     var label = document.createElement('label')
  14.     var contenedor = select.parentNode;
  15.  
  16.     checkbox.type = "checkbox"
  17.     checkbox.value = ruta_file;  
  18.     label.innerHTML = "Descargar Archivo";
  19.      
  20.     contenedor.appendChild( br );
  21.     contenedor.appendChild( checkbox );
  22.     contenedor.appendChild( label );
  23.  
  24.     if(ruta_file == 0){
  25.         return 0;
  26.     }else{
  27.        window.open(dir + ruta_file);
  28.     }
  29. }

Por lo que ví tienes bien la consulta que carga el select, y el código debería por lo menos mostrarte el select sin ningún problema.

Trata de ejecutarlos y me dices que te aparece

Última edición por Raziel_Ravenheart; 26/06/2013 a las 15:30