Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Ola amigos, estou precisando de ajuda,
estou desenvolvendo um sistema em php/mysql de questionamentos.
Irei listar várias perguntas com suas respectivas respostas usando o input radio do html para listar as respostas, mas não sei como fazer para recolher estes dados no php.
Pois o número de perguntas é aleatório, o usuário poderá criar quantas perguntas/respostas quiser.
Preciso de auxilio como receber estas informações no script php tendo n grupos diferentes de input radios da página em html.
A página seria esta:
http://webrex.areate...ha&idCampanha=5
Como armazeno estas respostas??
Desde já agradeço!!
Thiago Lima
Cara, você pega os dados na outra página por $_GET['nomeDoCampo'] ou $_POST['nomeDoCampo'] e, para as respotas, salva isso no banco... Só não entendi muito bom sobre as perguntas e respostas serem aleatórias e os usuários poderem criar isso.
Seguinte:
1- As perguntas já estão armazenadas no mysql na tabela dbPerguntas.
2- As respostas pré-definidas já estão armazendas no mysql na tabela dbRespostas.
Eu estou mostrando as perguntas e listando suas respectivas respostas na front do sistema.
Eu só estou quebrando cabeça para descobrir como armazenar estas informações.
Eu conheço os métodos enviados pelos formulários: GET eo POST.
Mas como receber estas informações no script que vai armazenar as respostas no mysql se eu não sei quantas perguntas serão listadas no front do sistema. Sendo que o meu cliente poderá listar 50 perguntas no questionário ou apenas 1.
Sei como enviar do formulário para o script em php, mas não sei como receber no php.
Será que criando um vetor e armazenar neste vetor as informações vindas no método POST, logo após este vetor estar preenchido com todas as respostas do questionário eu partir das as inserções no mysql?!
Será que alguém tem uma dica??
Cara, você então com certeza está gerando o formulário dinamicamente, se você está gerando dinamicamente você tem acesso aos ID's de cada pergunta e de cada resposta...
Então a lógica é:
//formatação do array
$arrDados = array(
[0] => array(
'idPergunta' => 1
'pergunta' => 'O ovo é branco?',
'respostas' => array(
array(
'idResposta' => 1,
'resposta' => 'Não. O ovo não é branco'
),
array(
'idResposta' => 2,
'resposta' => 'Sim. O ovo é branco'
)
)
)
);
foreach( $arrDados as $questionario ) {
echo "<h1>{$questionario['pergunta']}</h1>";
echo '<input type='hidden' name='perguntas['idPergunta']' id='{$questionario['idPergunta']}' value='{$questionario['idPergunta']}' />";
foreach( $questionario['respostas'] as $resposta ) {
echo "<label>{$resposta['resposta']</label><input type='radio' name='respostas[$questionario['idPergunta']][]' />";
}
}
Pra receber isso você vai receber assim:
$perguntas = $_POST['perguntas'];
$respostas = $_POST['respostas'];
Você vai receber um array no formato:
$pergunta = array(
1 => "O ovo é branco?",
3 => "A casa é branca?",
4 => "A galinha é branca?"
)
$respostas = array(
1 => array(
0 => "O ovo não é branco",
1 => "O ovo é sujo"
),
3 => array(
0 => "A casa é branca"
),
4 => array(
0 => "A galinha é branca"
)
)
Você pode observar acima que nos dois casos, tanto no perguntas quanto no respostas os indices do array é o id da pergunta, e os indices da resposta são seus ID's, agora você grava isso no banco no formato "id | id_pergunta | id_resposta | id_usuario"
Entendeu???
Vou te dar uma luz!
1. Armazene as perguntas e alternativas.
2. depois grave as respostas
Eu sei que a pergunta foge do assunto. Mas, você esta em que semestre?