Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Wellington13

Conta os Valores dos Botões selecionado pelo usuário e gravar no Mysql

Recommended Posts

Estou querendo contar de acordo com o que a pessoa escolher e gravar em uma variável para gravar no banco de dados.

 

 

<tr>
<td width="104">Sim</td>
<td width="571"><input type="radio" name="resp1" id="resp1sim" value="1"></td>
</tr>
<tr>
<td>Não</td>
<td><input type="radio" name="resp1" id="resp1nao" value="0"></td>
<tr>
<td width="104">Sim</td>
<td width="571"><input type="radio" name="resp1" id="resp2sim" value="1"></td>
</tr>
<tr>
<td>Não</td>
<td><input type="radio" name="resp1" id="resp2nao" value="0"></td>

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

radio só da pra selecionar 1, mas pra dar certo, todas as opções tem que ter o attr name igual! se você por o nome deles igual será só chamar o $_POST ou $_GET, se não for isso, me corrija

 

Mateus, cada radio tem um valor que coloco como 1 ou na outra opção 0 assim no questionário só poderá escolher um, eu quero pegar cada escolha dessa e somar para enviar via $_POST e gravar no banco.

 

Estou com dificuldade para somar no formulário e enviar as informações para serem gravadas.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Isso mesmo. Pegar o Value que esta =1 e o outro é value que esta =0.

 

Tem alguma solução para contar essas respostas e que eu possa enviar via POST para gravar no banco.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mateus

 

EU vou fazer uma pergunta no formulário aonde a pessoa responde

 

SIm - -- O valor vai sim 1

Não - -- O valor vai sim 0

Então quero contar, de umas 10 perguntas só podem responder 1 ou 0. Quero somar (1+1+1+1+1+1+1+0+0+0=7) enviar (7) enviar e gravar no banco via POST.

 

$CAMPO = $_POST["$media"];

Compartilhar este post


Link para o post
Compartilhar em outros sites

olha ainda não tenho 100% de certeza, mas tente fazer o seguinte, no html coloque [] nos names dos radios pra enviar como um array

<tr>
      <td width="104">Sim</td>
      <td width="571"><input type="radio" name="resp1[]" id="resp1sim" value="1"></td>
    </tr>
    <tr>
      <td>Não</td>
      <td><input type="radio" name="resp1[]" id="resp1nao" value="0"></td>
 
<tr>
      <td width="104">Sim</td>
      <td width="571"><input type="radio" name="resp1[]" id="resp2sim" value="1"></td>
    </tr>
    <tr>
      <td>Não</td>
      <td><input type="radio" name="resp1[]" id="resp2nao" value="0"></td>

no php:

<?php
$resp = $_POST['resp1'];
$qtd = count($resp);
for($i = 0; $i < $qtd; $i++):
echo $resp[$i];
endfor;
?>

teste ai e me diga no que vai dar

Compartilhar este post


Link para o post
Compartilhar em outros sites

Certo, fiz na intenção de não somar ainda, era so pra ver se dava certo, agora substitua o código pelo seguinte:

<?php
$resp = $_POST['resp1'];
$qtd = count($resp);
$num_respostas = 0;
for($i = 0; $i < $qtd; $i++):
if($resp[$i] == "1")
$num_respostas++;
else
return false;
endfor;
echo $num_respostas;
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

Certo, fiz na intenção de não somar ainda, era so pra ver se dava certo, agora substitua o código pelo seguinte:

<?php
$resp = $_POST['resp1'];
$qtd = count($resp);
$num_respostas = 0;
for($i = 0; $i < $qtd; $i++):
if($resp[$i] == "1")
$num_respostas++;
else
return false;
endfor;
echo $num_respostas;
?>

Mostra o Numero 0 .Quando chega no POST fica com o nome array porem não recebe valor.

Mateus muito obrigado, por hoje é só vou dormir valeu mesmo pela paciência e ajuda, mais tarde retomo nesse ponto.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nossa, agora que eu me toquei a merd@ que eu tava fazendo voce fazer, desculpa sauhsauhusa, testa o seguinte:

<?php
$resp = $_POST['resp1'];
function count_repeat_values($needle, $haystack){
   
    $x = count($haystack);
   
    for($i = 0; $i < $x; $i++){
       
        if($haystack[$i] == $needle){
            $needle_array[] = $haystack[$i];
        }
    }
   
    $number_of_instances = count($needle_array);
   
    return $number_of_instances;
}
$num_respostas = count_repeat_values('1', $resp);
echo $num_respostas;
?>

acredito que agora dê certo

Compartilhar este post


Link para o post
Compartilhar em outros sites

TB não mostra o valor, fica zerado. Valeu amanhã continuo ou mudo a estrategia e gravo no banco e crio outra tela para mostrar o valor usando comandos do banco.

 

 

Pessoal ainda não consegui resolver.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.