tengo una tabla con varios campos y con un checkbox. Una vez mostrados todos los campos, se marcan los checkbox que se quieran. Lo que me gustaría es seleccionar todas las filas que tengan el checkbox activado y hacer insert en bbdd y otras cosas. lo he probado de varias maneras pero siempre me sale el mismo mensaje Warning: Undefined array key "selec" in D:\Xampp\htdocs\mf3\ind.php on line 33
Fatal error: Uncaught TypeError: count(): Argument #1 ($value) must be of type Countable|array, null given in D:\Xampp\htdocs\mf3\ind.php:34 Stack trace: #0 {main} thrown in D:\Xampp\htdocs\mf3\ind.php on line 34
La línea 34 es $checkbox = $_POST['selec'];
Llevo varias horas pero no consigo arreglarlo.
Por favor, me puede ayudar alguien?
He recortado el código y lo he dejado mas sencillo para que se vea mejor.
Adjunto código
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<link rel="stylesheet" href="css/main.css">
<script src="css/jquery.min.js"></script>
<link rel="stylesheet" href="css/bootstrap.min.css" />
<script src="css/bootstrap.min.js"></script>
<link rel="stylesheet" href="css/jquery.dataTables.min.css">
</style>
<script type="text/javascript" src="css/jquery.dataTables.min.js"></script>
<script type="text/javascript" src="css/bootstrap-filestyle.min.js"> </script>
<link href="css/fonts.css" rel="stylesheet">
<link href="css/main1.css" rel="stylesheet">
<link href="css/main.css" rel="stylesheet">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css"
rel="stylesheet"
integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
crossorigin="anonymous">
<link rel="stylesheet" type="text/css" href="css/crud_hoja.css">
</head>
<body>
<?php
include('mf_conexion.php');
if (isset($_POST['añadirseleccion'])) {
$checkbox = $_POST['selec'];
for ($i = 0; $i < count($checkbox); $i++) {
$check_id = $checkbox[$i];
echo "registro " . $check_id;
}
}
?>
<form method="POST" action="">
<div class="header col-sm-4 mt-0">
<button type="submit" class="btn btn-primary" style="width:200px"
name="añadirseleccion">Submit</button>
<?php
$result=$db->query("SELECT * FROM cancion");
while ($row = $result->fetch_assoc()) { ?>
</div>
<table class="table display table-striped table-bordered" id="mitabla"
style="width:100%">
<tr class="align-middle ">
<td class="align-middle"><?php echo $row['artista']; ?></td>
<td class="align-middle"><?php echo $row['cancion']; ?></td>
<td class="align-middle"><?php echo $row['cancionId']; ?></td>
<td class="align-middle text-center size_sel">
<input type="checkbox" name="selec[]" id="checkItem"
value="<?php echo $row['cancionId']; ?>">
</td>
</tr>
</table>
</form>
<?php }?>
</body>
</html>
Me he mirado todos los casos que he encontrado en stackoverflow pero no he podido solucionarlo. Esperaba poder solucionarlo pero no ha sido posible
Aucun commentaire:
Enregistrer un commentaire