Not saved information in mysql when I click on one of the radioboxes of the form

1

I have a form with several text fields, radiobox, selectbox, and I want to save the information in the table of the bank that I use. But I'm having a problem when I click on the first two radios boxes , and I can only save when I click on the third, detail that in this radiobox , display through the javascript other two radiosboxes and a text field.

I have tried in several ways to reverse this, such as testing with ifs/elses ou switch blocks and the problem continues. The problem happens when I try to save the information of the participant and I select the schooling, eg: Radiobox with value of 1º Degree / 2nd Degree.

1) The form I use in the project:

  <form method="post" class="registration-form" id="participanteForm">

      <div class="form-group">                                        
         <input type="text" name="participanteNome" placeholder="Nome completo" class="form-control">
      </div>                                                            

      <div class="form-group">                                      
            <input type="text" name="participanteOcupacao" placeholder="Ocupa&ccedil;&atilde;o" class="form-control">
      </div>      

      <div class="form-group">                                      
            <input type="text" name="participanteEmail" placeholder="Email" class="form-control">
      </div>

      <div class="form-group">                                      
            <input type="text" name="participanteIdade" placeholder="Idade" class="form-control" maxlength="2">
      </div>                              

      <div class="form-group">                                      
            <input type="text" name="participanteCidade" placeholder="Cidade" class="form-control">
     </div>

     <div class="form-group">                                       
            <input type="text" name="participanteUF" placeholder="UF" class="form-control" maxlength="2">
    </div>

    <div class="form-group">                                        
            <input type="text" name="participanteEndereco" placeholder="Endere&ccedil;o completo" class="form-control">
    </div>

    <div class="form-group">
       <label id="text">Estado Civil</label>
       <select class="form-control" name="participanteEstadoCivil">
            <!--<option>Selecione abaixo :</option>-->
            <option>Solteiro (a)</option> 
            <option>Casado (a)</option>
            <option>Divorciado (a)</option>                                   
       </select>
   </div>

   <div class="form-group">
       <label id="text">Sexo</label>
       <select class="form-control" name="participanteSexo">
               <!--<option>Selecione abaixo :</option>-->
               <option>Masculino</option> 
               <option>Feminino</option>                                   
       </select>
   </div>

   <hr>

   <div class="form-group">                                     
        <div class="panel panel-default">
             <div class="panel-heading clearfix">
                   <i class="icon-calendar"></i>
                   <h3 class="panel-title">Escolaridade</h3>
             </div>

             <div class="panel-body register-participant">
                  <label class="checkbox-inline">                <!--participanteChk1Grau participanteChk2Grau participanteChk3Grau--->
                         <input id="lbm-chk-grau1" value="1 Grau" name="escolaridade" type="radio" checked> 1&#186; grau
                  </label>                                       <!-- ckGrau1 -->
                  <label class="checkbox-inline">
                         <input id="lbm-chk-grau2" value="2 Grau" name="escolaridade" type="radio"> 2&#186; grau
                  </label>
                  <label class="checkbox-inline">
                         <input id="lbm-chk-grau3" value="3 Grau" name="escolaridade" type="radio"> 3&#186; grau
                  </label>
                  <div class="form-checkbox-participante">
                       <label class="checkbox-inline">                   <!--participanteChkCompl participanteChkImcompl-->
                              <input id="lbm-chk-compl" value="Superior Completo" name="superior" type="radio"> Superior Completo
                       </label>
                       <label class="checkbox-inline">
                              <input id="lbm-chk-imcopl" value="Superior Incompleto" name="superior" type="radio"> Superior Incompleto
                       </label>
                       <br><br>
                       <input type="text" name="participanteIES" placeholder="Nome da Institui&ccedil;&atilde;o" class="form-control" id="form-ies">                                              
                  </div>
             </div>
        </div>                                                                                                                                                                         
   </div>

   <hr>

   <div class="form-group">
        <label id="text">Pergunta Secreta</label>
        <select class='form-control' name="participantePergSecreta">
               <option>Selecione abaixo :</option>
               <option>Lugar onde morou at&eacute; os 10 anos de idade</option> 
               <option>Primeiro animal de estima&ccedil;&atilde;o</option>
               <option>Qual seu time de cora&ccedil;&atilde;o</option>
               <option>Super-H&eacute;roi favorito</option>
               <option>Disciplina favorita na escola</option>                                   
        </select>
   </div>

   <div class="form-group">
         <label id="text">Resposta</label>
         <input type="text" name="participanteRespSecreta" class="form-control" id="form-resposta"> 
   </div>

   <hr>

   <div class="form-group">
        <label id="text">Nome de Usuario</label>
        <input type="text" name="participanteUsuario" class="form-resposta form-control" id="form-resposta"> 
   </div>

   <div class="form-group">
        <label id="text">Senha de acesso</label>
        <input type="password" name="participanteSenha" class="form-resposta form-control" id="form-resposta"> 
   </div>

   <div class="container submit">
        <button type="submit" class="btn btn-link-2" name="btn-registro-participante" id="btn-registro-participante">Salvar Informa&ccedil;&otilde;es</button>                              
   </div>

</form>

2) How do I try to save to the bank:

<?php

  function security_data($data)
  {
    $con=mysqli_connect("localhost","root","root","pentefino");

    $data = trim($data);
    $data = stripslashes($data);
    $data = strip_tags($data);
    $data = htmlspecialchars($data);
    $data = mysqli_real_escape_string($con,$data);

    return $data;    

}

 if ( !empty($_POST['btn-registro-participante']) ) {

    $nomeParticipante = security_data($_POST['participanteNome']);
    $ocupacao         = security_data($_POST['participanteOcupacao']);
    $idade            = security_data($_POST['participanteIdade']);
    $cidade           = security_data($_POST['participanteCidade']);
    $uf               = security_data($_POST['participanteUF']);
    $endereco         = security_data($_POST['participanteEndereco']);
    $estadoCivil      = security_data($_POST['participanteEstadoCivil']);
    $sexo             = security_data($_POST['participanteSexo']);
    $email            = security_data($_POST['participanteEmail']);

    $perguntaSecreta     =  security_data_2($_POST['participantePergSecreta']);
    $respostaSecreta     =  security_data_2($_POST['participanteRespSecreta']);

    $usuarioParticipante =  security_data_2($_POST['participanteUsuario']);
    $senhaAuxPartic      =  security_data_2($_POST['participanteSenha']);

    $senhaParticipante   = md5($senhaAuxPartic);

    /****************************************************************************/                  

    $escolaridade = $_POST['escolaridade'];
    $superior     = $_POST['superior'];        

    if ( isset($escolaridade) && $escolaridade == "1 Grau" ) {
           $nivelEscolaridade = $escolaridade;
    } else if ( isset($escolaridade) && $escolaridade == "2 Grau" ) {
                $nivelEscolaridade = $escolaridade;
    } else if (  isset($escolaridade) && $escolaridade == "3 Grau" )  
    {     
          $nivelEscolaridade = $escolaridade;
          if ( isset($superior) )
                $nivelSuperior = $superior;
                $IESParticipante = security_data_2($_POST['participanteIES']);
    }           


    if (    !empty($nomeParticipante)    && !empty($ocupacao)         && !empty($idade) 
         && !empty($cidade)              && !empty($uf)               && !empty($endereco)
         && !empty($estadoCivil)         && !empty($sexo)             && !empty($email)
         && !empty($perguntaSecreta)     && !empty($respostaSecreta)
         && !empty($usuarioParticipante) && !empty($senhaAuxPartic) 
         //&& !empty($escolaridade)          

       )
    {    

        // Abre a conexão com o BD
        $pdo = Database::connect();
        $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

        $sql  =  "INSERT INTO participantes(nome, ocupacao, sexo, estado_civil, dt_cadastro, cidade, uf, email, endereco, idade, pergunta_secreta, resposta, participante_usuario, participante_senha, escolaridade, escolaridade_detalhes, escolaridade_instituicao) "; 
        $sql .=  "VALUES(?, ?, ?, ?, NOW(), ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"; 

        $q = $pdo->prepare($sql);
        $q->execute(array($nomeParticipante,$ocupacao,$sexo,$estadoCivil,$cidade,$uf,$email,$endereco,$idade,$perguntaSecreta,$respostaSecreta,$usuarioParticipante,$senhaParticipante,$nivelEscolaridade,$nivelSuperior,$IESParticipante));                                                          

        //$sql  =  "INSERT INTO participantes(nome, ocupacao, sexo, estado_civil, dt_cadastro, cidade, uf, email, endereco, idade, pergunta_secreta, resposta, participante_usuario, participante_senha, escolaridade, escolaridade_detalhes, escolaridade_instituicao) "; 
        //$sql .=  "VALUES(?, ?, ?, ?, NOW(), ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"; 

        //$q = $pdo->prepare($sql);
        //$q->execute(array($nomeParticipante,$ocupacao,$sexo,$estadoCivil,$cidade,$uf,$email,$endereco,$idade,$perguntaSecreta,$respostaSecreta,$usuarioParticipante,$senhaParticipante,$chkEscolaridade,$chkSuperior,$IESParticipante));                      

        header("Location: ./sucesso.php");                                                                                    
        Database::disconnect();
    }


}

3) Input validators with bootstrapValidator:

// Validar campos do pesquisador com a biblioteca bootstrapValidator
$(document).ready(function() {
    $('#participanteForm').bootstrapValidator({
        message: 'This value is not valid',

       feedbackIcons: {
         valid: 'glyphicon glyphicon-ok',
         invalid: 'glyphicon glyphicon-remove',
         validating: 'glyphicon glyphicon-refresh'
      },
     fields: {
        partcNome: {
                message: 'O nome do participante n&atilde;o &eacute; v&acute;lido',
                validators: {
                    notEmpty: {
                        message: 'O nome do participante &eacute; requerido e n&atilde;o pode estar vazio'
                    },
                    stringLength: {
                        min: 8,
                        max: 40,
                        message: 'O nome do participante deve conter de 8 at&eacute; 40 caracteres'
                    }
                }
        },
        partcOcupacao: {
            validators: {
                 notEmpty: {
                        message: 'A ocupa&ccedil;&atilde;o do participante &eacute; requerida e n&atilde;o pode estar vazia'
                 },
                 stringLength: {
                        min: 20,
                        max: 40,
                        message: 'A ocupa&ccedil;&atilde;o do participante deve conter  o min. de 20 e o max. de 40 caracteres'
                }
            }
        },
        partcEmail: {
            validators: {
                notEmpty: {
                    message: 'O email &eacute; requerido e n&atilde;o pode estar vazio'
                },
                emailAddress: {
                    message: 'Voce informou um endere&ccedil;o de email n&atilde;o v&aacute;lido'
                }
            }
        },
        partcIdade: {
            validators: {                                                                                                   
                digits: {
                    message: 'O campo idade somente pode conter valores num&eacute;ricos'
                }
            }
        },
        partcCidade: {
            validators: {
                 notEmpty: {
                        message: 'A cidade do participante &eacute; requerida e n&atilde;o pode estar vazia'
                 },
                 stringLength: {
                        min: 5,
                        max: 40,
                        message: 'A cidade do participante deve conter  o min. de 5 e o max. de 40 caracteres'
                }
            }
        },
        partcUF: {
            validators: {
               notEmpty: {
                  message: 'A UF do participante &eacute; requerida e n&atilde;o pode estar vazia'
               }
            }
        },
        partcEndereco: {
            validators: {
                 notEmpty: {
                        message: 'O endere&ccedil;o do participante &eacute; requerida e n&atilde;o pode estar vazia'
                 },
                 stringLength: {
                        min: 20,
                        max: 40,
                        message: 'O endere&ccedil;o do participante deve conter  o min. de 20 e o max. de 40 caracteres'
                }
            }
        },
        partcEstadoCivil: {
           validators: {
               notEmpty: {
                  message: 'O estado civil do participante &eacute; requerida e n&atilde;o pode estar vazia'
               }
            }
        },
        partcSexo: {
           validators: {
               notEmpty: {
                  message: 'O sexo do participante &eacute; requerida e n&atilde;o pode estar vazia'
               }
            }
        },
        partcRd1Grau: {
           validators: {
               notEmpty: {
                  message: 'O nivel de escolaridade do participante &eacute; requerida e n&atilde;o pode estar vazia'
               }
            }
        },
        partcRd2Grau: {
           validators: {
               notEmpty: {
                  message: 'O nivel de escolaridade do participante &eacute; requerida e n&atilde;o pode estar vazia'
               }
            }
        },
        partcRd3Grau: {
           validators: {
               notEmpty: {
                  message: 'O nivel de escolaridade do participante &eacute; requerida e n&atilde;o pode estar vazia'
               }
            }
        },
        partcRdSuperior: {
            validators: {
               notEmpty: {
                  message: 'O nivel de escolaridade (completo) do participante &eacute; requerida e n&atilde;o pode estar vazia'
               }
            }
        },
        partcRdImcompl: {
            validators: {
               notEmpty: {
                  message: 'O nivel de escolaridade (incompleto) do participante &eacute; requerida e n&atilde;o pode estar vazia'
               }
            }
        },
        partcIES: {
            validators: {
                 notEmpty: {
                        message: 'A IES do participante &eacute; requerida e n&atilde;o pode estar vazia'
                 },
                 stringLength: {
                        min: 20,
                        max: 40,
                        message: 'A IES do participante deve conter  o min. de 20 e o max. de 40 caracteres'
                }
            }
        },
        partcPergSecreta: {
            validators: {
               notEmpty: {
                  message: 'A pergunta secreta do participante &eacute; requerida e n&atilde;o pode estar vazia'
               }
            }
        },
        partcRespSecreta: {
            validators: {
               notEmpty: {
                  message: 'A resposta secreta do participante &eacute; requerida e n&atilde;o pode estar vazia'
               }
            }
        },
        /*****************************************************************************************
        lbm_pesqd_cpf: {
            validators: {
                callback: {
                    message: 'CPF Invalido',
                    callback: function(value) {
                             //retira mascara e nao numeros       
                             lbm_pesqd_cpf = value.replace(/[^\d]+/g,'');    
                             if(lbm_pesqd_cpf == '') return false; 

                             if (lbm_pesqd_cpf.length != 11) return false;

                             // testa se os 11 digitos são iguais, que não pode.
                             var valido = 0; 
                             for (i=1; i < 11; i++){
                              if (lbm_pesqd_cpf.charAt(0)!=lbm_pesqd_cpf.charAt(i)) valido =1;
                             }
                             if (valido==0) return false;

                             //  calculo primeira parte  
                             aux = 0;    
                             for (i=0; i < 9; i ++)       
                              aux += parseInt(lbm_pesqd_cpf.charAt(i)) * (10 - i);  
                              check = 11 - (aux % 11);  
                              if (check == 10 || check == 11)     
                               check = 0;    
                              if (check != parseInt(lbm_pesqd_cpf.charAt(9)))     
                               return false;      

                             //calculo segunda parte  
                             aux = 0;    
                             for (i = 0; i < 10; i ++)        
                              aux += parseInt(lbm_pesqd_cpf.charAt(i)) * (11 - i);  
                             check = 11 - (aux % 11);  
                             if (check == 10 || check == 11) 
                              check = 0;    
                             if (check != parseInt(lbm_pesqd_cpf.charAt(10)))
                              return false;       
                             return true;              
                    }
                }, //callback
                notEmpty: {
                    message: 'O CPF &eacute; requerido e n&atilde;o pode estar vazio'
                }
            }                
        },***************************************************************************************/

        partcUsuario: {
            message: 'O usuario n&atilde;o &eacute; v&acute;lido',
            validators: {
                notEmpty: {
                    message: 'O usuario &eacute; requerido e n&atilde;o pode estar vazio'
                },
                stringLength: {
                        min: 6,
                        max: 20,
                        message: 'O nome de us&uacute;ario deve conter 6 e no m&aacute;x. 20 caracteres'
                },
                regexp: {
                    regexp: /^[a-zA-Z0-9_\.]+$/,
                    message: 'O nome de us&uacute;ario deve conter uma combina&ccedil;&atilde; de caracteres alfan&uacute;mericos, ponto e sublinhado'
                },   
                different: {
                    field: 'partcSenha',
                    message: 'O usuario e a senha n&atilde;o podem ser os mesmos'
                }
            }
        },
        partcSenha: {
            validators: {
                notEmpty: {
                    message: 'A senha &eacute; requerida e n&atilde;o pode estar vazia'
                },
                different: {
                    field: 'partcUsuario',
                    message: 'A senha n&atilde;o pode ser igual ao seu usuario'
                }
            } // validators
        } // field password            
    } // fields
});

$('#participanteForm').bootstrapValidator('resetForm', true);
});
    
asked by anonymous 06.09.2016 / 05:35

1 answer

1

You should give a value to the options like this:

<select class="form-control" name="participanteEstadoCivil">
        <!--<option>Selecione abaixo :</option>-->
        <option value="solteiro">Solteiro (a)</option> 
        <option value="casado">Casado (a)</option>
        <option value="divorciado">Divorciado (a)</option>                                   
</select>
    
06.09.2016 / 11:20