Obtendo uma lista de valores do checkbox com PHP

Com apenas uma marcação especial no atributo name, podemos receber um array com os valores selecionados.

Simplificando o desenvolvimento de APIs PHP com Swagger

Receber uma lista de valores selecionados em um elemento Input do tipo checkbox, é bem comum, seja para atribuir níveis de permissão, escolher itens de compra, e uma infinidade de outras necessidades.

Para receber um array com os itens marcados no HTML, basta adicionar [] (abre colchetes/fecha colchetes) junto ao atributo name, veja um exemplo abaixo.

<input type="checkbox" name="ckFruta[]" value="maca">

Pronto, com a marcação acima, basta acessar o índice ckFruta no $_POST, para receber toda a sua lista.

Assista a nossa videoaula, nela você vai aprender a receber os dados, trata-loas e exibi-los na tela.

index.html

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Input Checkbox PHP</title>

    <style>
        label{
            display: block;
        }
    </style>
</head>

<body>

    <form action="save.php" method="post">
        <label>
            <input type="checkbox" name="ckFruta[]" value="maca">
            Maça
        </label>

        <label>
            <input type="checkbox" name="ckFruta[]" value="uva">
            Uva
        </label>

        <label>
            <input type="checkbox" name="ckFruta[]" value="banana">
            Banana
        </label>

        <label>
            <input type="checkbox" name="ckFruta[]" value="pera">
            Pera
        </label>

        <label>
            <input type="checkbox" name="ckFruta[]" value="goiaba">
            Goaiba
        </label>

        <input type="submit" name="btnSubmiti" value="Enviar">
    </form>

</body>

</html>

save.php

<?php

//Declaramos a variável que vai receber o conteúdo da lista
$frutas = null;

//Verificamos se o índice existe
if (isset($_POST['ckFruta']))

    //Atribuimos a variável todo conteúdo do índice
    $frutas = $_POST['ckFruta'];

//Verificamos se a variável não é nula
if ($frutas !== null)

    //Percorremos todos os conteúdos do array
    for ($i = 0; $i < count($frutas); $i++)
    
        //exibimos o valor atual na tela
        echo "<p>{$frutas[$i]}</p>";


/**
 * Recebe um parâmetro e exibe o seu conteúdo
 *
 * @param  mixed $param
 * @return void
 */
function dd($param)
{
    echo '<pre>';
    print_r($param);
    echo '</pre>';
    die();
}

Finalizamos mais uma aula por aqui, nos vemos em breve.