Nueva pregunta

Pregunta:

Fecha: 20-09-2016 05:13:18 (En Español)

¿Cómo tomar valores de una tabla y saber donde estoy posicionado?[Resuelta]

Buen día estimados:

La consulta es la siguiente:
Tengo una tabla HTML generada dinamicamente dentro de un foreach y cargada con datos. En la última columna de esta tabla, tengo unos botos que puedo presionar para realizar diferentes acciones con los datos. Lo que necesito al presionar uno de los botones es saber en que fila de la tabla estoy y tomar datos de esa fila para pasarlos a un controlador, procesarlos y mostrarlos en otra vista. Ya que estoy empezando a usar esta tecnología quisiera saber cual es la mejor manera de hacer esto. ¿Debo usar js o no hace falta?

Les muestro la tabla tal cual la tengo:

<?php foreach ($estudios  as $fila){ 
    $paths[$cont]=$fila['pathArchivo']
?>
<tr>

        <td><?php echo strtoupper($fila['modalidad']); ?></td>
        <td><?php echo strtoupper($fila['nombrePaciente']); ?></td>
        <td><?php echo($fila['idPaciente']);?></td>
        <td class="hidden-480"><?php echo strtoupper($fila['idEstudio']); ?></td>
        <td><?php echo strtoupper($fila['nroSeries']); ?></td>
        <td><?php echo strtoupper($fila['nroAdquisicion']); ?></td>	

        <td class="hidden-480">
                <span class="label label-sm label-warning">REALIZADO</span>
        </td>

        <td>
                <div class="hidden-sm hidden-xs action-buttons">
                        <a class="blue" target="_blank" title="Visualizador" href="<?php echo(site_url('Visualizador/AbrirVisualizador')) ?>" >
                                <i class="fa fa-eye bigger-130"></i>
                        </a>

                        <a class="green"  target="_blank" title="Tipeador" href="<?php echo(site_url('Visualizador/AbrirVisualizador')) ?>">
                               <i class="ace-icon fa fa-pencil bigger-130"></i>
                        </a>

                        <a class="red" href="#" title="Exportar">
                                <i class="fa fa-download bigger-130"></i>
                        </a>

                </div>
         </td>
</tr>


Espero su respuesta, desde ya muchas gracias!

Etiquetas: HTML - Javascript - PHP - Pregunta - Tabla HTML Votos: 1 - Respuestas: 3 - Vistas: 15 Compartir en: Google Facebook Twitter LinkedIn Link
 

Respuestas:

  • Fecha: 20-09-2016 07:41:33
    <?php foreach ($estudios  as $fila ) 
    { 
            $paths[$cont]=$fila['pathArchivo']
    ?>
    <tr>
        <td><?php echo strtoupper($fila['modalidad']); ?></td>
        <td><?php echo strtoupper($fila['nombrePaciente']); ?></td>
        <td><?php echo($fila['idPaciente']);?></td>
        <td class="hidden-480"><?php echo strtoupper($fila['idEstudio']); ?></td>
        <td><?php echo strtoupper($fila['nroSeries']); ?></td>
        <td><?php echo strtoupper($fila['nroAdquisicion']); ?></td>    
    
        <td class="hidden-480">
            <span class="label label-sm label-warning">REALIZADO</span>
        </td>
        <td>
            <div class="hidden-sm hidden-xs action-buttons">
                <a class="blue" target="_blank" title="Visualizador" href="<?php echo(site_url('Visualizador/AbrirVisualizador')) ?>" >
                    <i class="fa fa-eye bigger-130"></i>
                </a>
                <a class="green"  target="_blank" title="Tipeador" href="<?php echo(site_url('Visualizador/AbrirVisualizador')) ?>">
                       <i class="ace-icon fa fa-pencil bigger-130"></i>
                </a>
                <a class="red" href="#" title="Exportar">
                    <i class="fa fa-download bigger-130"></i>
                </a>
            </div>
        </td>
    </tr>
    

    La pregunta es, que código tenes en AbrirVisualizador

    TEndría que ser algo así site_url('Visualizador/AbrirVisualizador'?variable=valor) y
    en Visualizador tomar la variable con $_GET['variable']

    Lo que haría es encerrar en un form cada <tr>

    <form method="post" action="abrirvisualizador.php">
        <tr>
            <td><?php echo strtoupper($fila['modalidad']); ?></td>
            <td><?php echo strtoupper($fila['nombrePaciente']); ?></td>
            <td><?php echo($fila['idPaciente']);?></td>
            <td class="hidden-480"><?php echo strtoupper($fila['idEstudio']); ?></td>
            <td><?php echo strtoupper($fila['nroSeries']); ?></td>
            <td><?php echo strtoupper($fila['nroAdquisicion']); ?></td>    
            <td class="hidden-480">
                <span class="label label-sm label-warning">REALIZADO</span>
            </td>
            <td>
                <div class="hidden-sm hidden-xs action-buttons">
                    <button type="submit" name="visualizar" value="id">Visualizar</button>
    
                    <button type="submit" name="tipeador" value="id">Tipeador</button>
                    <button type="submit" name="exportar" value="id">Exportar</button>
                </div>
            </td>
        </tr>
    </form>
    


    y en abrirvisualizador.php

    if(isset($_POST('visualizar))
    valor = $_POST['visualizar'] //contendrá el valor de value="id"
    


    Algo parecido a esto.

    En conclusión, encerrar en cada etiqueta <tr> un form para ser enviado al servidor por cada submit que se haga por cada botón y, así determinar en que fila se hice click

    Saludos

    DIEGO (obviamente este ejemplo es para ampliar por el resto de la comunidad)
      Votos: 4 - Link respuesta
     
  • Fecha: 22-09-2016 10:45:08 veo que tienes esto en cual de esos botones quieres hacer eso

            <div class="hidden-sm hidden-xs action-buttons">
                <a class="blue" target="_blank" title="Visualizador" href="<?php echo(site_url('Visualizador/AbrirVisualizador')) ?>" >
                    <i class="fa fa-eye bigger-130"></i>
                </a>
                <a class="green"  target="_blank" title="Tipeador" href="<?php echo(site_url('Visualizador/AbrirVisualizador')) ?>">
                       <i class="ace-icon fa fa-pencil bigger-130"></i>
                </a>
                <a class="red" href="#" title="Exportar">
                    <i class="fa fa-download bigger-130"></i>
                </a>
            </div>
    
      Votos: 1 - Link respuesta
     
  • Fecha: 25-09-2016 13:19:49 Estimados:
    Lo he resuelto de la manera que propone Diego, encerre cada <tr> en un form para enviar todos los datos que necesito por post.

    Muchas gracias por su ayuda. Saludos!

    Diego.
      Votos: 1 - Link respuesta
     
Para participar activamente de la comunidad primero debes autenticarte, ingresa al sistema.Iniciar Sesión
 
frjcbbae garagebible.com