Jump to content
vitor_matheus22

Problema de passagem de var em PHP, a mesma recebe valor 0 quando inserida no banco.

Recommended Posts

Galera boa noite, 

 

meu código não está recebendo o valor da variável na hora que é passada por post/get, podem me ajudar?

E por isso, na hora de inserção no banco, a mesma recebe valor 0.

 

Segue código do formulario:

<?php

header('Content-type: text/html; charset=ISO-8859-1');
?>

<meta charset="utf-8">
<head>
<title>Sistema de Controle de Atas</title>
<link rel="stylesheet" type="text/css" href="stylesheet.css">
    <script type="text/javascript" src="script4.js"></script>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    
    
</head>

<body>

    <div id="cabecalho"> 
        <h2>Sistema de Controle de Atas</h2>
        <div id="logo">
        <img src="logopet.jpg" width="50" height="50" align="">
    </div>
    
   
    <div id="ajuda_sair">
    <nav id="menu">
    <ul>
    <li><a href="sistema.php">Sair</a> </li>
    <li><a href="ajuda.html">Ajuda</a> </li>
        <li><a href="telapetiano.php">Voltar ao Menu Principal</a></li>
    <li><strong>Menu do Petiano &nbsp &nbsp </strong></li>

    </ul>
    </nav>
    </div>
        
     
    </div>
    
    <br></br>
    <br></br>

    
    <h2>Registrar Presenças </h2>
    
    
    <div id="grav_presenca">
        <form action="grava_presencas.php" method="POST">
        
       <?php
        include ("conectarbanco.php");
        
        $recebecod=$_GET["add_presenca"]; 
        
        $selecionalinha= mysqli_query($conexao, "SELECT DATE_FORMAT(Data,'%d/%c/%Y') as 'Data',r.CodReuniao from reuniao r where r.CodReuniao=$recebecod");
        $campo= mysqli_fetch_array($selecionalinha);
        
        ?>
          
        <input type="hidden" id="CodReuniao" name="CodReuniao" value="<?=$campo["CodReuniao"]?>">
        <label for="data">Data da Reunião:</label>&nbsp &nbsp<input type="text" name="data" size="20" maxlength="10"  readonly="readonly" value="<?=$campo["Data"]?>">
        
        
        <h4> Selecione os petianos presentes e ausentes:  </h4>
        <table width="50%" border="1" bordercolor="#EEE" cellspacing="0" cellpadding="10">
        <tr> 
        <td> <strong> Código </strong> </td>
        <td> <strong> Nome</strong> </td>
        <td width="10"><strong>Presentes</strong></td>
        

        </tr>
        

       <input type="hidden" name="codPetiano" value="<?=$campo["codPetiano"]?>">

       <?php
       include ("conectarbanco.php");
       
   
       $seleciona= mysqli_query($conexao,"SELECT * FROM petianos order by nome ASC");
   
       while($campo= mysqli_fetch_array($seleciona)){ ?>
       <tr>
       <td><?=$campo["codPetiano"]?></td>
       <td><?=$campo["nome"]?></td> 
       <td><input type="checkbox" class="get_value" value="<?=$campo["nome"]?>"><label></label></td>
       </tr>
 
       <?php }   ?>
       
        </table>
        <br></br>
        
        
       
        <?php
        include ("conectarbanco.php");
        $recebecod=$_GET["add_presenca"]; 

        $sel_itens4= mysqli_query($conexao,"SELECT r.CodReuniao FROM reuniao r WHERE CodReuniao=$recebecod");
        while($campo= mysqli_fetch_array($sel_itens4)){ ?>
        <tr>

            <td><a href="grava_presencas.php?passacodigo=<?=$campo["CodReuniao"]?>"><button type="button" name="submit" id="submit">Salvar Chamada</button></a></td>    
        
        </tr> 
        
    
    
        <?php } ?>
      
        </table>
        
        <br></br>   
       <h4 id="result"></h4>
       <script>
       $(document).ready(function(){
       $('#submit').click(function(){
           var insert = [];
       $('.get_value').each(function(){
           if($(this).is(":checked"))
           {
           insert.push($(this).val());
           }
        });
       insert = insert.toString();
       $.ajax({
             url: "grava_presencas.php",
             method: "POST",
             data:{insert:insert},
             success:function(data){
               $('#result').html(data);
       }
       });
       }); 
       });
       </script>
       
       
       
       
    </form> 
    </div>    

  

Segue código da gravação:

<?php

header('Content-type: text/html; charset=ISO-8859-1');
?>
<?php


if (isset($_POST["insert"])) {

    include ("conectarbanco.php");   
    
    
    $passacod=$_GET["passacodigo"];
    
    $query = "INSERT INTO chamada(IdChamada,CodReuniao,nome,statusparticipante) values ('','$passacod','" . $_POST["insert"] . "','presente')";
    $result = mysqli_query($conexao, $query);
    
    
    

 
}

    echo "<script language='javascript' type='text/javascript'>
    alert('Presenças e Ausências Registradas!');
    window.location.href='reg_presencas.php';
    </script>";

?>


    
</body>
</html>

 

 

Edited by Gabriel Heming
adicionar formatação de código

Share this post


Link to post
Share on other sites

é porque esta mandando sem o parametro na URL, como você esta enviando via ajax a URL esta fixa sem a variavel.

troca:

<td><a href="grava_presencas.php?passacodigo=<?=$campo["CodReuniao"]?>"><button type="button" name="submit" id="submit">Salvar Chamada</button></a></td>

por

 

<td><a href="grava_presencas.php?passacodigo=<?=$campo["CodReuniao"]?>" class="button" name="submit" id="submit"Salvar Chamada</a></td>

e:

<script>
       $(document).ready(function(){
       $('#submit').click(function(){
           var insert = [];
       $('.get_value').each(function(){
           if($(this).is(":checked"))
           {
           insert.push($(this).val());
           }
        });
       insert = insert.toString();
       $.ajax({
             url: "grava_presencas.php",
             method: "POST",
             data:{insert:insert},
             success:function(data){
               $('#result').html(data);
       }
       });
       }); 
       });
       </script>

por

 

<script>
       $(document).ready(function(){

       $('#submit').click(function(e){
e..preventDefault();
           var insert = [];
       $('.get_value').each(function(){
           if($(this).is(":checked"))
           {
           insert.push($(this).val());
           }
        });
       insert = insert.toString();
var url = $(this).attr("href");
       $.ajax({
             url: url,
             method: "POST",
             data:{insert:insert},
             success:function(data){
               $('#result').html(data);
       }
       });
       }); 
       });
       </script>

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By WitchMad
      Ooi gente!
      Seguinte, estou desenvolvendo uma plataforma para advogados. Nela será consultado processos a partir do web service do PJE.
      No site do PJE me recomendou utilizar o NuSoap para consultar o web service e foi o que eu fiz.
      Segue o código da consulta
      <?php require_once 'nusoap/lib/nusoap.php'; /* Parâmetros Requisitados */ // idConsultante // senhaConsultante // numeroProcesso /* Objetos de Resposta sucesso bollean Indica se houve sucesso na consulta do processo. mensagem string Mensagem informando que o processo foi consultado com sucesso. recibo xs:base64Binary Comprovante do protocolo do processo, que contém os dados básicos do processo. */ $wsdl = "https://www.tjpe.jus.br/pje/intercomunicacao?wsdl"; $client = new nusoap_client($wsdl, 'wsdl'); if($client->getError()){ echo "Erro no construtor" . $client->getError(); exit(); } $result = $client->call('consultarProcesso', array('idConsultante'=>'CPF do Consultante', 'senhaConsultante'=>'Senha do Consultante', 'numeroProcesso'=>'Número do Processo')); echo $result['sucesso']; ?> Acontece que a página fica em branco, sem nenhum tipo de mensagem.
      Se possível gostaria de dicas se há algum erro no código, ou alguma outra ferramenta para consultar web service
    • By Alvaro Pacífico Serpa
      Olá pessoal, eu estava copiando um trecho de um código fonte usando o file_gets_contents
      $log=file_get_contents($url); $trechoInicial = "VideoUrl('"; $trechoFinal = "')"; $posicao1 = strpos($log, $trechoInicial); $posicao2 = strpos( $log, $trechoFinal, $posicao1 ); $trechoCopiado = substr( $log, $posicao1 + strlen( $trechoInicial ), $posicao2 - $posicao1 - strlen( $trechoInicial ) ); echo $trechoCopiado; Estava funcionando perfeitamente e do nada parou de funcionar, tem alguma outra forma de fazer isto que estou fazendo?
    • By Leonardo Ortega
      Prezados, bom dia.
      sou novo por aqui, e me deparei com esta situação:
      estou desenvolvendo um projeto e tudo começou quando apenas mudei o banco de dados que estava conectado. Ou seja, se eu me conecto ao baco de dados anterior, volta todo código html, porém, se conecto ao banco de dados atual as divs desaparecem. 
       
      obs: Isso tb acontece quando eu desativo o php tudo volta como a imagem 1 e se eu ativo fica como a imagem2.
       
      quem pode me ajudar.. desde já muito obrigado.  


    • By Richard.Ribeiro
      Fala Pessoal.. Bom dia.. uma ajuda por favor.
      não sei se e a melhor opção mais, gostaria de criar um id sequencial id="material"
      para resolver seguinte problema.. com javascript eu crio select com dados selecionados anteriormente, e crio mais opção no caso de haver mais pedido, porém toda vez que preciso troca a categoria o PRIMEIRO selecte que já possui um item e resetado. como posso resolver isso O PRIMIEIRO SELECT NÃO MUDAR. uma vez que á possui value selected
       
      segue todo código:

        <div id="box" >
        <form id="cadastro"  method="post">
          <?php
            if(isset($_POST['acao'])){
              $ide = $_POST['ide'];
              $data = $_POST['data_pedido'];
              $username=$_SESSION['username'];
              $justificativa = $_POST['justificativa'];
              $id_tipo_material = $_POST['material'];
              $qnt_solicitada = $_POST['qnt_solicitada'];

              //cadastrar no banco de dados!
                  $gravar = new Painel();
                  $id_gsm = $gravar->cadastrarGsm($data,$username,$justificativa,$ide);
                  $gravar->cadastrarItem($id_gsm,$id_tipo_material,$qnt_solicitada);
                  Painel::alert('sucesso','Pedido realizado com sucesso!');
                  }
                  $ConsultaIde = ConexaoBD::conectar()->prepare("SELECT  vsat_gilat, 'IDE: '||vsat_gilat|| ', Situação:'|| situacao|| ', Localidade:'||localidade|| ', Logradouro: '||logradouro as local
        FROM vsat WHERE vsat_gilat != '' AND situacao = 'Ativo'");
                  $ConsultaIde->execute();
                  $ConsultaIde = $ConsultaIde->fetchAll();
        ?>
        <div >
        <div class="form-group">
              <label>Selecione uma IDE</label>
              <select class="ide" name="ide" id="ide" required>
                <option disabled selected>-- Selecione IDE --  </option>
                  <?php
                  foreach ($ConsultaIde as $key => $value) {
                    ?>
                    <option value="<?php echo $value['vsat_gilat'];?>">
                      <?php echo $value['local'];?>

                </option>
              <?php }?>
              </select>

              <label>Data da Solicitação do Material :</label>
              <input type="text"value="<?php   echo date('d/m/Y');    ?>"  name="data_pedido" readonly >
        </div><!--form-group-->
            <div class="form-group">
              <label>Justificativa do pedido:</label>
              <textarea  rows="8" cols="80" name="justificativa" required></textarea>
        </div><!--form-group-->

        <div class="form-group">
              <label>Selecione Sistema:</label>
              <select name="id_categoria" id="id_categoria">
              <option selected disabled> --- Selecione o Sistema ---</option>
            <?php
        $consulta= ConexaoBD::conectar()->prepare("SELECT id_sistema, descricaos FROM public.cadastrar_sistema");
        $consulta->execute();
        while($row_cat_post = $consulta->fetch(PDO::FETCH_ASSOC) ) {
        echo '<option value="'.$row_cat_post['id_sistema'].'">'.$row_cat_post['descricaos'].'</option>';
              }
        ?>
          </select>
        </div><!--form-group-->
        <div class="form-group">
          <label>Selecione Padrão:</label>
          <span class="carregando">Aguarde, carregando...</span>
          <select name="id_sub_categoria" id="id_sub_categoria" >
            <option value="">--- Selecione o Padrão ---</option>
          </select>
        </div><!--form-group-select-->

        </div>
        <div class="pedido">
          <div class="remover">
          <label>Selecione Material:</label>
          <span class="carregando">Aguarde, carregando...</span>
          <select name="material[]" id="material">
            <option value="">--- Selecionte o Material ---</option>
          </select>
          <input type="text" id="quantidade" name="qnt_solicitada[]" placeholder="Digite a Quantidade" >
      <button type="button" name="button" class="removedor">Remover Item</button>
      </div>
      </div>
      </div>
        <button type="button" name="button" class="clonador">Novo Item</button>
        <input type="submit" name="acao" value="Cadastrar!">
        </form>
       
       
       
       
       
       
       
        <script type="text/javascript" src="https://www.google.com/jsapi"></script>
                <script type="text/javascript">
                  google.load("jquery", "1.4.2");
                </script>
      <script  src="<?php echo INCLUDE_PATH_PAINEL ?>js/jquery-3.4.1.min.js"></script>
      <script type="text/javascript">
        $(function(){
          $('#id_categoria').change(function(){
            if( $(this).val() ) {
              $('#id_sub_categoria').hide();
              $('.carregando').show();
              $.get('sub_categorias_post?search=',{id_categoria: $(this).val(), ajax: 'true'}, function(j){
                html = $.parseHTML(j);
                j=JSON.parse(html[16].textContent.trim());
                var options = '<option value="">Escolha Subcategoria</option>';
                for (var i = 0; i < j.length; i++) {
                  options += '<option value="' + j.id + '">' + j.nome_sub_categoria + '</option>';
                }
                $('#id_sub_categoria').html(options).show();
                $('.carregando').hide();
              });
            } else {
              $('#id_sub_categoria').html('<option value="">– Escolha Subcategoria –</option>');
            }
          });
        });
        $(function(){
          $('#id_sub_categoria').change(function(){
            if( $(this).val() ) {
              $('#material').hide();
              $('.carregando').show();
              $.get('sub_categorias_post2?search=',{id_sub_categoria: $(this).val(), ajax: 'true'}, function(j){
                html = $.parseHTML(j);
                console.log(html);
                j=JSON.parse(html[16].textContent.trim());
                var options = '<option value="">Escolha Subcategoria</option>';
                for (var i = 0; i < j.length; i++) {
                  options += '<option value="' + j.id + '">' + j.nome_sub_categoria + '</option>';
                }
                $('#material').html(options).show();
                $('.carregando').hide();
              });
            } else {
              $('#id_sub_categoria2').html('<option value="">– Escolha Subcategoria –</option>');
            }
          });
        });
        </script>
        <script>
        $(document).ready(function(){
       
              $(document).on('click', '.clonador', function(e){
                var elm_html = $('.pedido').html();
                var counter = 0;  //faz uma cópia dos elementos a serem clonados.
                  e.preventDefault();
                  var elementos = elm_html.replace(/\[[0\]]\]/g, '['+ counter +']');  //substitui o valor dos index e incrementa++
                  counter++;
                  $('#cadastro').append(elementos);  //exibe o clone.
              });
          });

          $(document).on('click', '.removedor', function (event) {
            event.preventDefault();
            $(this).parents('.remover').remove(); // navega até o pai com a classe pedido e remove ele inteiro
          });
        </script>
       
        <?php
        die();
        ?>
      </div><!--box-content-->
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.