Mandar Datos de Tabla MYSQL-PHP a Otra Tabla con FORM – $_POST – foreach

publicado por: Anonymous

Tengo una tabla php que se llena de una base de datos mysql…

<table class="table table-striped">
<thead>                                                     
    <tr>
        <th class="text-center" colspan="24"><input type="submit" name="txtEnviar" value="Enviar" class="form-control"></th>
    </tr>
    <tr>
        <th class="text-center">ODC</th>
        <th class="text-center">Pedido</th>
        <th class="text-center">Modelo</th>
        <th class="text-center">Select</th>
    </tr>
</thead>
<tbody>
    <? foreach ($arrPedido2 as $rowPedido2) { ?>
    <tr class="gradeX">
        <td class="text-center"><input type="hidden" name="txtNoOdc" value="<? echo $rowPedido2['noOdc'];?>"> <? echo utf8_encode($rowPedido2['noOdc']);?></td>
        <td class="text-center"><input type="hidden" name="txtPedido" value="<? echo $rowPedido2['pedido'];?>"><? echo utf8_encode($rowPedido2['pedido']);?> </td>          
        <td class="text-center"><input type="hidden" name="txtModelo" value="<? echo $rowPedido2['modelo'];?>"><? echo utf8_encode($rowPedido2['modelo']);?></td>
        <td class="text-center"><input type="checkbox" name="txtIdPedido[]" value="<? echo utf8_encode($rowPedido2['idPedido']);?>"></td>
    </tr>
    <? }; ?>
</tbody>

Y Quiero mandar los seleccionados mediante un checkbox a otra tabla

<table class="table table-striped">
<thead>                                                     
    <tr>
        <th class="text-center">ODC</th>
        <th class="text-center">Pedido</th>
        <th class="text-center">Modelo</th>
        <th class="text-center">Select</th>
    </tr>
</thead>
<tbody>
    <tr class="gradeX">
        <td class="text-center"> </td>
        <td class="text-center"> </td>          
        <td class="text-center"> </td>
        <td class="text-center"> </td>
    </tr>
</tbody>

Come seria?

solución

Hola amigo si es solo con PHP

Agrega un formulario a tu tabla, no olvides un boton para hacer el submit.

<form method="post" action="paimprimir.php">
  <table>
    <tr>
      <td><input type="checkbox" name="algo[]" value="algo">
    </tr>
  </table>
  
  <button> Enviar </button>
</form>

En el otro archivo (por ejemplo el paimprimir.php), te van a llegar los seleccionados en el arreglo $_POST['algo']

sin embargo solo te llegarán los valores que le metiste al value del checkbox. (en mi ejemplo el string "algo").


Si quisieras llevarte todos los datos de la tabla.

Bueno hay 2 métodos.

1. El Más limpio y mejor para solo PHP.

En base a los ID enviados en el arreglo $_POST , hacer una nueva consulta que te traiga los datos de los seleccionados. (esto es un ejemplo, ya tu sabrás tus tablas)

SELECT * FROM table WHERE id IN $_POST['algo']

Despues de eso ya haces lo mismo que hiciste en tu primera tabla y a imprimir.

2. El fácil, pero complicado.

Ammm la verdad es que es meter todos los datos en un arreglo de Javascript y enviar ese arreglo a la nueva página, donde se procesará como tal.

La verdad el proceso es más tardado aunque más eficiente (en teoría) pues no tienes que hacer otra consulta a MySQL.

Sin embargo pues no daré más detalles al respecto, por que créeme si con PHP se te hizo complicado, entender la lógica del JS va a ser un problema.

Saludos

Respondido por: Anonymous

Leave a Reply

Your email address will not be published. Required fields are marked *