Leia se a caixa de seleção está marcada em PHP

Subodh Poudel 30 janeiro 2023
PHP
  1. Use a função isset() em $_POST Array para ler se a caixa de seleção estiver marcada
  2. Use a função in_array() para ler se a caixa de seleção está marcada para caixas de seleção como um array
  3. Use a função isset() com função ternária para ler se a caixa de seleção está marcada
Leia se a caixa de seleção está marcada em PHP

Vamos demonstrar como verificar se a caixa de seleção está marcada no PHP usando a função isset() no array $_POST. Fornecemos o valor do atributo name da tag input do HTML como o elemento do array no array $_POST.

Apresentaremos outro método para ler a caixa de seleção se ela estiver marcada no PHP usando a função in_array(). Usamos caixas de seleção como um array neste método. Isso significa que todo o campo name na tag HTML input deve conter o mesmo array.

Apresentaremos um método abreviado para verificar se a caixa de seleção está marcada usando o operador ternário. O método é mais direto e curto e usa a função isset().

Use a função isset() em $_POST Array para ler se a caixa de seleção estiver marcada

Podemos usar a função isset() para verificar se a caixa de seleção está marcada no PHP. A função isset() leva o array $_POST como argumento. O array $_POST contém o valor específico do atributo name presente no formulário HTML.

Por exemplo, crie um formulário em HTML com o método POST e especifique a ação para index.php. Crie duas caixas de seleção com os nomes test1 e test2, respectivamente. Salve o arquivo com a extensão .php. Crie um arquivo PHP chamado index.php. Aplique duas condições if à função isset() com o array $_POST como argumento. Use test1 e test2 como os elementos do array nas matrizes $_POST, respectivamente. Imprima a mensagem especificando que o respectivo valor foi verificado.

O exemplo abaixo usa o método POST para enviar os dados no formulário. É seguro ao enviar informações confidenciais por meio do formulário. Clique aqui para saber mais sobre o método POST. O usuário marca as duas caixas de seleção do formulário. Portanto, o script produz a saída da maneira que é mostrada abaixo. Se o usuário tivesse marcado apenas a Opção 1, o script sairia como valor verificado1. É semelhante à Opção 2 também.

Código de exemplo:

# html 5
<form action="index.php" method="post" >
<input type="checkbox" name="test1" value="value1"> Option 1
<input type="checkbox" name="test2" value="value2"> Option 2
<input type="submit" value="Submit"> 
</form>
#php 7.x
<?php
if(isset($_POST['test1'])){
    echo "checked value1"."<br>";
}
if(isset($_POST['test2'])){
    echo "checked value2";
}
?>

Resultado:

checked value1
checked value2

Use a função in_array() para ler se a caixa de seleção está marcada para caixas de seleção como um array

Podemos usar a função in_array() para verificar se um elemento está dentro de um array em PHP. A função in_array() leva o valor a ser verificado como o primeiro argumento. O segundo argumento da função é a matriz onde o valor deve ser verificado. Verifique o manual do PHP para saber mais sobre a função in_array. Para que esse método funcione, todos os valores de atributo name no formulário HTML devem ser um array.

Por exemplo, atribua o valor do atributo name no formato HTML com o array test[]. Observe que se aplica a todas as caixas de seleção type. Primeiro, no arquivo PHP, verifique se os dados foram enviados usando a função isset() como feito no primeiro método. Mas, não use os colchetes [] após o teste ao verificar os dados postados. Então, use a função in_array() para verificar se value1 está no array $_POST['test']. Mostre a mensagem.

A princípio, o exemplo abaixo verifica se os dados são enviados no formulário. Se a condição for verdadeira, ele verifica se valor1 está no array $ _POST ['teste'] usando a função in_array(). O usuário marca a primeira caixa de seleção no formulário.

Código de exemplo:

#html 5
<form action="index.php" method="post" >
<input type="checkbox" name="test[]" value="value1"> Option 1
<input type="checkbox" name="test[]" value="value2"> Option 2
<input type="submit" value="Submit"> 
#php 7.x
<?php
if(isset($_POST['test'])){
    if(in_array('value1', $_POST['test'])){
        echo "Option1 was checked!";
    }
}
?>

Resultado:

Option1 was checked!

Use a função isset() com função ternária para ler se a caixa de seleção está marcada

Podemos usar um método abreviado para verificar se a caixa de seleção foi marcada no PHP. Este método usa um operador ternário junto com a função isset(). Por favor, verifique o MSDN Web Docs para saber sobre o operador ternário.

Por exemplo, defina uma variável $check para armazenar o valor da operação ternária. Use a função isset() para verificar se test1 foi marcado na caixa de seleção. Imprima a variável $check para mostrar o resultado. No exemplo abaixo, verificado é exibido se a condição for verdadeira, e não verificado é exibido se a condição for falsa. O usuário marca a segunda caixa de seleção no formulário. Portanto, a condição falha.

Código de exemplo:

#html 5
<form action="index.php" method="post" >
<input type="checkbox" name="test1" value="value1"> Option 1
<input type="checkbox" name="test2" value="value2"> Option 2
<input type="submit" value="Submit"> 
</form>
#php 7.x
<?php
$check = isset($_POST['test1']) ? "checked" : "unchecked";
echo $check;
?>

Resultado:

unchecked
Subodh Poudel avatar Subodh Poudel avatar

Subodh is a proactive software engineer, specialized in fintech industry and a writer who loves to express his software development learnings and set of skills through blogs and articles.

LinkedIn