Neste tópico irei demonstrar como receber o valor de vários checkboxs e a utilização da função strtok(), utilizada para quebrar o valor recebido de cada checkbox. Bastante útil para passagem de mais de um valor, utilizando a linguagem PHP.
Nosso projeto é composto de dois arquivos a seguir:
1 - index.php
Arquivo que contém o html com os checkbox que serão selecionados.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>
<body>
<form name="form" action="saida.php" method="post">
<input name="saida[]" type="checkbox" value="zero">zero<br>
<input name="saida[]" type="checkbox" value="um#dois#três">um dois três<br>
<input name="saida[]" type="checkbox" value="quatro#cinco#seis">quatro cinco seis<br>
<input name="saida[]" type="checkbox" value="sete#oito#nove">sete oito nove<br>
<input name="saida[]" type="checkbox" value="dez">dez<br>
<br>
<input name="ok" type="submit" value="ok" />
</form>
</body>
</html>
2 - saida.php
Arquivo que contém o código php que irá percorrer o array de checkbox e quebrar a string value para obtenção dos dados passados.
<?php
// verifica se existe o controle
if (isset($_REQUEST["saida"])) {
echo "Itens selecionados:<BR>";
// percorre o array de checkbox para pegar a value
foreach($_REQUEST["saida"] as $saida) {
echo "- " . $saida . "<BR>";
// utliza a função strtok para quebrar a string
$tok = strtok($saida, "#");
// quebra a string imprimindo cada pedaço.
// foi usado o caractere # como demilitador,
// mas pode ser usado qualquer outro
while ($tok) {
echo "token = $tok<br>";
$tok = strtok("#");
}
}
} else {
echo "Selecione um checkbox.<br>";
}
?>
Nenhum comentário:
Postar um comentário