PHP - Insertar datos marcajes de Checkbox

 
Vista:
sin imagen de perfil
Val: 27
Ha aumentado su posición en 5 puestos en PHP (en relación al último mes)
Gráfica de PHP

Insertar datos marcajes de Checkbox

Publicado por Thunder (16 intervenciones) el 11/02/2021 14:52:47
Hola comunidad. De antemano gracias por la ayuda que me puedan brindar.

Tengo una duda, es sencilla pero no me está quedando bien , de hecho no me funciona.

Tengo un formulario donde una tabla se llena dinamicamente con los datos contenidos en una tabla de una BD. Agregué a ese form, un input tipo numerico, para que el usuario final introdujera ese dato. EN mi code, dispuse que al marcar el checkbox me cogiera el ID (uno de los datos que quiero insertar en otra tabla), Yo quisiera que ademas de ese ID, me insertara el importe correspondiente introducido.

Dejo una imagen para que se guien mejor. Al marcar estoy cogiendo el ID pero quiero insterar en una tabla, tanto ese ID como el importe que el usuario teclea

Gracias mil..
enviar-Forum
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de joel
Val: 3.828
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Insertar datos marcajes de Checkbox

Publicado por joel (1269 intervenciones) el 11/02/2021 18:57:12
Hola Thunder, sin ver el código se me hace complicado ayudarte...

ademas de enviar el id (que no se como lo envías) también envíes el Importe de igual manera... si nos puedes mostrar como envias actualmente el id...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 27
Ha aumentado su posición en 5 puestos en PHP (en relación al último mes)
Gráfica de PHP

Insertar datos marcajes de Checkbox

Publicado por Thunder (16 intervenciones) el 11/02/2021 19:56:47
Hola Gracias por Responder..

Mira, esta es una parte de mi FORM

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<tr class="table-active">
        <td align="center">
 
            <input class="form-check-input" type="checkbox" name="chbk[]" id="chbk" value=<?php echo $row['ID']; ?>>
 
        </td>
        <td>
            <?php echo $row['ID']; ?>
        </td>
        <td>
            <?php echo $row['Descripcion']; ?>
        </td>
        <td>
            <input type="number" class="form-control" id="Importe[]" name="Importe[]" min="1" step="any">
        </td>
 
    </tr>
 
    </tbody>
   <?php
   }
   ?>
</table>
el importe lo tecleo yo, el ID si lo coge dinamicamente.

Y donde proceso el FORM
1
2
3
4
5
6
7
8
9
10
11
12
if(isset($_POST["chbk"])) {
    $ids = $_POST['chbk'];
    foreach ($_POST['chbk'] as $ids => $value) {
 
        $data =  $value ;
        $data_aux[] = $data;
 
 
        $datafactura2 = $factura->multiplescc($data),$importe;
 
    }
}

No se como coger el importe que yo teclee a mano..

Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Yoel
Val: 617
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Insertar datos marcajes de Checkbox

Publicado por Yoel (198 intervenciones) el 11/02/2021 21:41:20
Hola thunder, si lo que quieres es recorrer todos los datos de tu formulario puedes hacerlo así:

1
2
3
4
5
//De esta forma puedes obtener el valor de todos los elementos del formulario
foreach ($_POST as $ids => $value) {
    $id = $value['ids'];
    $importe = $value['importe'];
}

Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 27
Ha aumentado su posición en 5 puestos en PHP (en relación al último mes)
Gráfica de PHP

Insertar datos marcajes de Checkbox

Publicado por Thunder (16 intervenciones) el 11/02/2021 23:39:25
Saludos. Y gracias por su respuesta. Recorrer y a la vez insertarlo en una BD.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Yoel
Val: 617
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Insertar datos marcajes de Checkbox

Publicado por Yoel (198 intervenciones) el 11/02/2021 23:45:35
En este caso solo lo recorre, no colocaste nada sobre el insert solo tendrías que colocar dentro del foreach tu insert para que a medida que valla recorriendo el array vallas insertando.

Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 27
Ha aumentado su posición en 5 puestos en PHP (en relación al último mes)
Gráfica de PHP

Insertar datos marcajes de Checkbox

Publicado por Thunder (16 intervenciones) el 11/02/2021 23:50:38
Hola y gracias nuevamente.
Mire, no me funciona. En los errores del navegador me sale esto..

Warning: Uninitialized string offset 0 in C:\laragon\www\factuweb\add_factura.php on line 37

Fatal error: Uncaught TypeError: Cannot access offset of type string on string in C:\laragon\www\factuweb\add_factura.php:37 Stack trace: #0 {main} thrown in C:\laragon\www\factuweb\add_factura.php on line 37

Y allí es donde esta la línea que usted me recomendó

1
$id = $value['ids'];
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Yoel
Val: 617
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Insertar datos marcajes de Checkbox

Publicado por Yoel (198 intervenciones) el 11/02/2021 23:55:35
Por favor puedes imprimir el valor que tienes la variable $_POST para ver que de vuelve de esta manera poderlo ayudar mejor. Lo puede colocar aqui en el foro

Gracias

1
print_r($_POST);
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 27
Ha aumentado su posición en 5 puestos en PHP (en relación al último mes)
Gráfica de PHP

Insertar datos marcajes de Checkbox

Publicado por Thunder (16 intervenciones) el 11/02/2021 23:59:51
Bueno, esta llegando un array..

1
Array ( [Factura] => [selectorcontrato] => 789456 [Fecha_Emitida] => [Fecha_Procesamiento] => [Descripcion_Factura] => [Valor_Total] => [chbk] => Array ( [0] => 11111 [1] => 12345 ) [Importe] => 200 )
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Yoel
Val: 617
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Insertar datos marcajes de Checkbox

Publicado por Yoel (198 intervenciones) el 12/02/2021 00:44:15
El primer detalle que veo, es que solo te esta colocando un valor importe y dos id en los checkbox tienes que ver si en tu código html tienen el mismo nombre para el input del importe ya que solo se esta reflejando uno y lo tienes definido como array() para el importe y dos para el chbk. En el código que te coloco a continuación falta la función del insert.

Gracias.


1
2
3
4
5
6
$array = $_POST;
 
for ($i = 0; $i < count($array); $i++) {
     $ids =  $array['chbk'][$i];
     $importe = $array['Importe'];
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 27
Ha aumentado su posición en 5 puestos en PHP (en relación al último mes)
Gráfica de PHP

Insertar datos marcajes de Checkbox

Publicado por Thunder (16 intervenciones) el 12/02/2021 14:11:37
El codigo HTML, o sea parte de el

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<tr class="table-active">
    <td align="center">
 
        <input class="form-check-input" type="checkbox" name="chbk[]" id="chbk" value=<?php echo $row['ID']; ?>>
 
    </td>
    <td>
        <?php echo $row['ID']; ?>
    </td>
    <td>
        <?php echo $row['Descripcion']; ?>
    </td>
    <td>
        <input type="number" class="form-control" id="Importe[]" name="Importe[]" min="1" step="any">
    </td>

Alli tengo el check y el input Importe
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar