Como percorrer um ARRAY com valores de CHECKBOX dentro de um array $_POST dinamicamente em PHP?
01/03/2015
0
Boas Pessoal! Tenho uma missão quase impossível. Estou criando um formulário dinâmico em que as perguntas e possíveis respostas estão no DB. Ou seja, é algo muito variável pois o Administrador do Sistema escolherá as perguntas e possíveis respostas que o usuário comum poderá responder.
Página que pegaria as perguntas do banco e suas possíveis respostas(caso sejam campos tipos radio ou checkbox); assim como as respostas dadas pelo formulário.
Abaixo está só o código teste estático sem pegar nada do banco e com "perguntas" fictícias.
Outro problema é que estou recebendo esse erro:
[img]http://arquivo.devmedia.com.br/forum/imagem/414840-20150301-130706.png[/img]
Página que pegaria as perguntas do banco e suas possíveis respostas(caso sejam campos tipos radio ou checkbox); assim como as respostas dadas pelo formulário.
Abaixo está só o código teste estático sem pegar nada do banco e com "perguntas" fictícias.
<?php if(filter_input(INPUT_SERVER, 'REQUEST_METHOD')=='POST') { //Percorre a Variável Global $_POST foreach($_POST as $chave=>$campo) { //Recuperra a chave e o campo $comando = '$' . $chave . '= filter_input(INPUT_POST, "' . $campo . '");'; //Transforma a variável comando em um comando eval($comando); //Imprime o comando para a nossa visualização echo $comando . '<br />'; } } ?> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>TESTE DE DADOS</title> </head> <body> <br /> <form action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']);?>" method="post"> <input type="checkbox" name="disciplina[]" value="1" />Matemática<br /> <input type="checkbox" name="disciplina[]" value="2" />Português<br /><br /> <input type="radio" value="sim" name="pode" />Sim<br /> <input type="radio" value="não" name="pode" />Não<br /><br /> <input type="text" name="nome" /><br /><br /> <textarea name="texto"></textarea><br /> <input type="submit" /> </form> </body> </html>
Outro problema é que estou recebendo esse erro:
[img]http://arquivo.devmedia.com.br/forum/imagem/414840-20150301-130706.png[/img]
Yan Machado
Curtir tópico
+ 0
Responder
Post mais votado
01/03/2015
Já sei como fazer.
<?php if(filter_input(INPUT_SERVER, 'REQUEST_METHOD')=='POST') { $s = array(); foreach ($_POST as $chave => $valor) { if(is_array($valor)) { echo 'Chave: ' . $chave . ' Valores:<br />'; foreach($valor as $ch=>$va){ echo 'Chave: ' . $ch . ' | Valor: ' . $va . '<br />'; } echo '<br />'; } else { echo 'Chave: ' . $chave . ' | Valor: ' . $valor . '<br />'; } } } ?> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>TESTE DE DADOS</title> </head> <body> <br /> <form action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']);?>" method="post"> <input type="checkbox" name="disciplina[]" value="Matemática" />Matemática<br /> <input type="checkbox" name="disciplina[]" value="Português" />Português<br /><br /> <input type="radio" value="sim" name="pode" />Sim<br /> <input type="radio" value="não" name="pode" />Não<br /><br /> <input type="text" name="nome" /><br /><br /> <textarea name="texto"></textarea><br /><br /> <input type="submit" /> </form> </body> </html>
Yan Machado
Responder
Mais Posts
01/03/2015
Marcio Araujo
Yan, conseguiu sozinho com algum apoio: artigo, video aula?
Responder
01/03/2015
Yan Machado
Dei uma olhada na [url:descricao=Referência PHP Matriz W3Schools]http://www.w3schools.com/php/php_ref_array.asp[/url], por quê? Você tinha alguma proposta?
Responder
Clique aqui para fazer login e interagir na Comunidade :)