Leia se a caixa de seleção está marcada em PHP
-
Use a função
isset()em$_POSTArray para ler se a caixa de seleção estiver marcada -
Use a função
in_array()para ler se a caixa de seleção está marcada para caixas de seleção como um array -
Use a função
isset()com função ternária para ler se a caixa de seleção está marcada
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 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