Ir para conteúdo
alissong

Como pegar valor radio para exibir uma consulta no mysql

Recommended Posts

Tenho dois formulários que exibe a consulta de fatura pendente de transferência. Veja o código abaixo:

<?php
// Conectar com banco mysql
//require("verifica.php");
include("conexao/bdinc.php");

?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>Transferencia de Produtos</TITLE>
<META content="text/html; charset=windows-1252" http-equiv=Content-Type>
<META name=GENERATOR content="MSHTML 9.00.8112.16476"></HEAD>
<script type="text/javascript" src="java/ajaxselectfatura.js"></script>    
<script type="text/javascript">
function mudar(x,y){

x.style.backgroundColor=y;
}
function mostrarFatura(){
  alert('O valor selecionado \u00e9 '+ getRadioValor('n_fatura'));
  
 }
  
 function getRadioValor(name){
  var rads = document.getElementsByName(name);
   
  for(var i = 0; i < rads.length; i++){
   if(rads[i].checked){
    return rads[i].value;
    
   }
   
  }
   
  return null;
 }
 
</script>    
<BODY>
<BR>
<fieldset style="width:900px">
<legend><label>INCLUSAO DAS FATURAS DE PRODUTOS</label></legend>
<FORM name="transferencia" method="POST" action="rel_transferencia.php">
<table  width="100%" cellspacing="1" cellpadding="0" bgcolor="#000000">
<tr>
<td  width="100%" bgcolor="#E1E1E1">
   
   <table border="1" width="100%" cellpadding="0" class="tabela">
     <br> 
     <tr align="center" class="cabecalho">
         <td width="8%"><label><b>Opcao</b></label></td>
         <td width="10%"><label><b>ID</b></label></td>
         <td width="10%"><label><b>Nº. Fatura</b></label></td>
         <td width="10%"><label><b>Cupom</b></label></td>
         <td width="15%"><label><b>Total Fatura</b></label></td>
         <td width="15%"><label><b>Situacao</b></label></td>
         <td width="10%"><label><b>Login</b></label></td>
         <td width="25%"><label><b>Data Inclusao</b></label></td>               
     </tr>    
<?php

// Faz o sql no Banco de dados
 
$sql = "SELECT * FROM transferencia WHERE situacao='PENDENTE' ORDER BY transferencia.n_fatura DESC";

$res = mysqli_query($con,$sql);
$Cor = "";

//VERIFICA A QUANTIDADE DE REGISTROS RETORNADOS
$registros = mysqli_num_rows($res);

if($registros > 0){

while ($linha = mysqli_fetch_array($res)){
if ($Cor == "#FFFFFF") $Cor = "#ECF2F8"; else $Cor = "#FFFFFF";
  
echo " <tr bgcolor='" . $Cor . "' onmouseover=\"mudar(this,'#FFE2CC');\" onmouseout=\"mudar(this,'" . $Cor . "');\">";
//echo " <td align ='center'><a href='?rel=rel_pedido_itens&id=$linha[0]'>$linha[0]</a></td>";
echo " <td style='text-align:center;' class='tabela'><input type='radio' name='n_fatura'  id='n_fatura' onchange='mostrarFatura();BuscarDados(this.value)' value='$linha[1]' class='input'></td>";
echo " <td class='tabela'>$linha[0]</td>";
echo " <td style='text-align:right;color:blue' class='tabela'>$linha[1]</td>";
echo " <td align ='center' class='tabela'>$linha[2]</td>";
echo " <td align ='right' class='tabela'>".number_format($linha[3], 2, ',', '.')."</td>";
echo " <td class='tabela'>$linha[4]</td>";
echo " <td class='tabela'>$linha[5]</td>";
echo " <td class='tabela'>$linha[6]</td>";

echo "</tr>";
}//fecha if while
}//fecha if
else {
echo "<b>Não existe(em) fatura(s) para o critério de busca !<b>";

}//fecha else

?>
</table>   
<?php
// Fecha a conexao
mysqli_close($con);
?>
</td>
</tr>
</table>  
</FORM>
</fieldset> 
 <BR>
<fieldset style="width:900px">
        <legend><label> ITENS DA FATURA</label></legend>

<TABLE cellSpacing=0 cellPadding=0 width="100%" >
  <TBODY>
    <TR>
    <TD width="100%">
      <TABLE border=0 width="100%" class="tabela">
        <TBODY>
        <TR>
            <td>
<!-- AQUI SERÁ APRESENTADO O RESULTADO DA BUSCA DINÂMICA.. OU SEJA OS NOMES -->
<div id="Resultado"></div></td>          
         </TR>
         </TBODY></TABLE></TD></TR></TBODY></TABLE></fieldset>

</body>
</html>

O arquivo rel_transferencia.php: Veja o código abaixo:

<?php
#Arquivo de funções *************************************
 include("conexao/bdinc.php");
 

#********************************************************
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Relatorio de Fornecedores</title>
<link rel="stylesheet" type="text/css" href="css/projeto.css">
<script language="javascript" src="java/remove_acento.js"></script>
<script type="text/javascript">
function mudar(x,y){

x.style.backgroundColor=y;
}
//-->
</script>
</head>
<body>
<table  width="100%" cellspacing="1" cellpadding="0" bgcolor="#000000">
<tr>
<td  width="100%" bgcolor="#E1E1E1">
   <form>
   <table border="1" width="100%" cellpadding="0" class="tabela">
     <br> 
     <tr align="center" class="cabecalho">
         <td width="5%"><label><b>N Fatura</b></label></td>
         <td width="10%"><label><b>Cod. Prod.</b></label></td>
         <td width="10%"><label><b>Nome Produto</b></label></td>
         <td width="10%"><label><b>Valor Unitario</b></label></td>
         <td width="10%"><label><b>Quantidade</b></label></td>
         <td width="10%"><label><b>Subtotal</b></label></td>         
     </tr>
<?php

// Pegar a página atual por GET

if (isset($_GET['n_fatura'])){
$nfatura = $_GET['n_fatura'];
} else {
$nfatura = 1;
}

// Seleciona no banco de dados com o LIMIT indicado pelos números acima
$sql = "SELECT mov_saida.n_fatura,mov_saida.cod_produto,produto.descricao,mov_saida.valor_unitario,mov_saida.q_saida,mov_saida.subtotal 
FROM produto,mov_saida,transferencia 
WHERE produto.cod_produto=mov_saida.cod_produto AND mov_saida.n_fatura=transferencia.n_fatura AND mov_saida.n_fatura = '$nfatura'
ORDER BY produto.descricao";

$res = mysqli_query($con,$sql);
$Cor = "";

//VERIFICA A QUANTIDADE DE REGISTROS RETORNADOS
$registros = mysqli_num_rows($res);

if($registros > 0){
    
$total_fornecedor = 0;
while ($linha = mysqli_fetch_array($res)){
if ($Cor == "#FFFFFF") $Cor = "#ECF2F8"; else $Cor = "#FFFFFF";
  
echo " <tr bgcolor='" . $Cor . "' onmouseover=\"mudar(this,'#FFE2CC');\" onmouseout=\"mudar(this,'" . $Cor . "');\">";
echo " <td class='tabela'>$linha[0]</td>";
echo " <td style='text-align:right;color:blue' class='tabela'>$linha[1]</td>";
echo " <td align ='center' class='tabela'>$linha[2]</td>";
echo " <td align ='right' class='tabela'>".number_format($linha[3], 2, ',', '.')."</td>";
echo " <td align ='right' class='tabela'>".number_format($linha[4], 2, ',', '.')."</td>";
echo " <td align ='right' class='tabela'>".number_format($linha[5], 2, ',', '.')."</td>";

$total_fornecedor += $linha[5];
echo "</tr>";
}//fecha if while
echo "<tr>";
echo "<td colspan='5'><label><b>Total das Faturas a Transferir</b></label></td>";
echo " <td align ='right' style='text-align:right;color:blue' class='tabela'>".number_format($total_fornecedor, 2, ',', '.')."</td>";
echo "</tr>";
}//fecha if
else {
echo "<b>N&atilde;o existe(em) fatura(s) para transferencia !<b>";

}//fecha else

?>
</table>
<?php
// Fecha a conexao
mysqli_close($con);
?>
</td>
</tr>
</table>
    <p align=right><font face=Arial size=1><a href="indexXXX.php" title="Retornar"><< Retornar</a></p>
</form>
</body>
</html>

O arquivo ajax que faz a consulta dinâmica. Veja o código abaixo:

/**
  * Função para criar um objeto XMLHTTPRequest
  */
 function CriaRequest() {
     try{
         request = new XMLHttpRequest();        
     }catch (IEAtual){
         
         try{
             request = new ActiveXObject("Msxml2.XMLHTTP");       
         }catch(IEAntigo){
         
             try{
                 request = new ActiveXObject("Microsoft.XMLHTTP");          
             }catch(falha){
                 request = false;
             }
         }
     }
     
     if (!request) 
         alert("Seu Navegador não suporta Ajax!");
     else
         return request;
 }
/**
  * Função para enviar os dados
*/
 function BuscarDados() {
     
     // Declaração de Variáveis   		
     var nfatura   = document.getElementById("n_fatura").value;    
     var result    = document.getElementById("Resultado");
     var xmlreq    = CriaRequest();
     
     // Exibi a imagem de progresso
     result.innerHTML = 'AGUARDE PROCESSANDO...';
     
     // Iniciar uma requisição
     xmlreq.open("GET", "rel_transferencia.php?n_fatura=" + nfatura, true);
     
     // Atribui uma função para ser executada sempre que houver uma mudança de ado
     xmlreq.onreadystatechange = function(){
         
         // Verifica se foi concluído com sucesso e a conexão fechada (readyState=4)
         if (xmlreq.readyState == 4) {
             
             // Verifica se o arquivo foi encontrado com sucesso
             if (xmlreq.status == 200) {
                 result.innerHTML = xmlreq.responseText;
             }else{
                 result.innerHTML = "Erro: " + xmlreq.statusText;
             }
         }
     };
     xmlreq.send(null);
 }  

O código está funcionado parcialmente, pois somente exibe a consulta com o primeiro item da tabela transferencia.

Exemplo: 

Clico no radio 193, mas somente exibe a consulta do radio 195. Não esta passando o parâmetro do radio clicado.

echo " <td style='text-align:center;' class='tabela'><input type='radio' name='n_fatura'  id='n_fatura' onchange='mostrarFatura();BuscarDados(this.value)' value='$linha[1]' class='input'></td>";

var nfatura   = document.getElementById("n_fatura").value;  

Na verdade quero saber como fazer para pegar o valor input radio e colocar nessa variável var nfatura que é responsável pela consulta.

 

Alguém pode me ajudar. 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Veja se resolve:

var nfatura = "";
var campo_radio = document.getElementsByName('n_fatura');
for (var i=0 ; i< campo_radio.length;i++){
  if ( campo_radio[i].checked ) {
    nfatura = campo_radio[i].value;
  }
}

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ted k',

 

Você é o cara. Muito obrigado.................

Funcionou beleza.

 

Um abraço.

 

Alissong

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora


  • Conteúdo Similar

    • Por Melkis
      Estou com um grande problema tenho imagens irregulares preciso recorta-las e salvar em um outro arquivo, até aí tudo bem, o problema é que o sistema que estou criando é totalmente responsivo, e o script abaixo delimita o tamanho da imagem, o script está cortando, salvando aimagem em png, tudo está funcionando perfeitamente, o único problema é ele não se adequar responsivo, quem souber como posso pegar os eixos x e y atuais da tela e coloca-los dentro das variáveis que fazem, pois tentei o .resize mas não deu certo, Aguardo anciosamente a resposta, muito obrigado seguem os links para que possam entender o eu eu estou querendo fazer:
      Para terem uma ideia melhor do que estou falando segue o link de um site com cropper.js em quadros e responsivo: https://fengyuanchen.github.io/cropperjs/
      E aqui o link com exemplo de crop poligonal, https://netplayer.gr/crop/
      //funçao para fazer um crop na imagem $(document).ready(function() { var condition = 1; var points = [];//holds the mousedown points var canvas = document.getElementById('myCanvas'); this.isOldIE = (window.G_vmlCanvasManager); $(function() { // if (document.domain == 'localhost') { if (this.isOldIE) { G_vmlCanvasManager.initElement(myCanvas); } var ctx = canvas.getContext('2d'); var imageObj = new Image(); function init() { canvas.addEventListener('mousedown', mouseDown, false); canvas.addEventListener('mouseup', mouseUp, false); canvas.addEventListener('mousemove', mouseMove, false); } // Draw image onto the canvas imageObj.onload = function() { ctx.drawImage(imageObj, 0, 0); }; imageObj.src = "img.png"; // Switch the blending mode ctx.globalCompositeOperation = 'destination-over'; //mousemove event $('#myCanvas').mousedown(function(e) { if (condition == 1) { ctx.beginPath(); $('#posx').html(e.offsetX); $('#posy').html(e.offsetY); } }); //mousedown event $('#myCanvas').mousemove(function(e) { if (condition == 1) { if (e.which == 1) { var pointer = $('<span class="spot">').css({ 'position': 'absolute', 'background-color': '#000000', 'width': '5px', 'height': '5px', 'top': e.pageY, 'left': e.pageX }); //store the points on mousedown points.push(e.pageX, e.pageY); //console.log(points); ctx.globalCompositeOperation = 'destination-out'; var oldposx = $('#oldposx').html(); var oldposy = $('#oldposy').html(); var posx = $('#posx').html(); var posy = $('#posy').html(); ctx.beginPath(); ctx.moveTo(oldposx, oldposy); if (oldposx != '') { ctx.lineTo(posx, posy); ctx.stroke(); } $('#oldposx').html(e.offsetX); $('#oldposy').html(e.offsetY); } $(document.body).append(pointer); $('#posx').html(e.offsetX); $('#posy').html(e.offsetY); }//condition }); $('#crop').click(function() { condition = 0; // var pattern = ctx.createPattern(imageObj, "repeat"); //ctx.fillStyle = pattern; $('.spot').each(function() { $(this).remove(); }) //clear canvas //var context = canvas.getContext("2d"); //Delimita o tamanho da imagem isso já retira a base responsiva da imagem ctx.clearRect(0, 0, 600, 600); ctx.beginPath(); ctx.width = 350; ctx.height = 350; ctx.globalCompositeOperation = 'destination-over'; //draw the polygon setTimeout(function() { //console.log(points); var offset = $('#myCanvas').offset(); //console.log(offset.left,offset.top); for (var i = 0; i < points.length; i += 2) { var x = parseInt(jQuery.trim(points[i])); var y = parseInt(jQuery.trim(points[i + 1])); if (i == 0) { ctx.moveTo(x - offset.left, y - offset.top); } else { ctx.lineTo(x - offset.left, y - offset.top); } //console.log(points[i],points[i+1]) } if (this.isOldIE) { ctx.fillStyle = ''; ctx.fill(); var fill = $('fill', myCanvas).get(0); fill.color = ''; fill.src = element.src; fill.type = 'tile'; fill.alignShape = false; } else { var pattern = ctx.createPattern(imageObj, "repeat"); ctx.fillStyle = pattern; ctx.fill(); var dataurl = canvas.toDataURL("image/png"); //upload to server (if needed) var xhr = new XMLHttpRequest(); // // xhr.open('POST', 'upload.php', false); xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); var files = dataurl; var data = new FormData(); var myprod = $("#pid").val(); data = 'image=' + files; xhr.send(data); if (xhr.status === 200) { console.log(xhr.responseText); $('#myimg').html('<img src="upload/' + xhr.responseText + '.png"/>'); } } }, 20); }); // } }); }); Para interessados em testar é só adicionar as tags: <script type='text/javascript' src='http://code.jquery.com/jquery-latest.min.js'></script>   e colocar um <canvas> no <body> da pagina:   <canvas id="myCanvas"></canvas>   Desde já Muito Obrigado a todos   javascript canvas jcrop  
    • Por Conrado Mirto
      Estou Com Problema em Ler o Corpo do Modal, o Erro esta marcado com alert("ERRO AQUI"); PRINT DO ERRO
       
       
      insaneservers.js
      $(document).ready(function () { $("#formVIPBRONZE").click(function() { $("#formVIP_Bronze").modal("show"); // $.ajax({ url:"boxBronze_inicio.php",dataType:"json", method:"GET", data: {}, success: function(data) { if(data.hasError == false) { $("#abrir_box_bronze").html(data.corpo_inicio); $("#proxima_ir_cadastro_bronze").click(function() { $.ajax({ url:"boxBronze_cadastro.php",dataType:"json", method:"GET", data: {}, success: function(datac) { if(data.hasError == false) { $("#abrir_box_bronze").html(datac.cadbronze); $("#TitleBronze").html("Cadastro VIP [2/2]"); } else{ alert("ERRO!\n"+data.msgErro); } }, error: function(){ alert("ERRO 1"); } }); }); } else{ alert("ERRO!\n"+data.msgErro); } }, error: function(){ alert("ERRO AQUI"); } }); }); }); boxBronze_inicio.php
      <?php require "insane.php"; $insane = new insane(); $html = ' <div id="infoBronze"> <center><b>Termos do Servidor </b><br></center> Vantagens Extras <br> <small>* Eventos Exclusivos Para Vip </small><br> <small>* Suporte Exclusivo </small><br> <small>* Sala no TS³</small><br><br> Informacoes <br> <small>* Reembolso de VIP Somente Quando Servidor Fechar/Falir. </small><br> <small>* VIP Podem Ser Pausado Apenas 1 Vez </small><br> <small>* Maximo 2 Vip Por Conta </small><br> <small>* VIP Valera por 31 Dias </small><br> <small>* Nao Vendemos Kits Diferentes dos Abaixo </small><br><br> Apos Wipe <br> <small>* Kits VIP"s Serao Liberado as 00:00 </small> <br><br> Ativar Vip <br> <small>* Contate um Admistrador no TS3 ts3.globalservidores.com.br </small><br> <small>* Procurar por Mirtin ou Peixoto no Servidor </small><br> <small>* Envie Um Email Com Todos as Informacoes <a href="#">ATIVAR VIP</a> </small><br> <hr> <input type="button" value="Proximo" class="btn btn-primary btn-block" id="proxima_ir_cadastro_bronze"> </div> '; $insane->setSaida("corpo_inicio", $html); $insane->fim(); ?>  
      boxBronze_cadastro.php <?php session_start(); require "insane.php"; // VOCÊ IRA PUCHAR O ARQUIVO INSANE.PHP AQUI move os box para pasta boxs $insane = new insane(); // action="processa/processa_cadcompvip.php" $cadbronze = ' <div class="alert alert-success"> <b>Atenção</b> <Br>Você Esta Cadastrando Sua Conta Para a ,Como: Comandos, Eventos, Dicas, Suporte Mais Rapido e Etc </div> <form method="post" action="processa/processa_cadcompvip.php" enctype="multipart/form-data"> <div class="row"> <div class="col-xs-6 col-sm-6 col-md-6"> <div class="form-group"> <label>Nick:</label> <input name="vip_nick" type="text" class="form-control input-sm" placeholder="Digite seu Nick" required> </div> </div> <div class="col-xs-6 col-sm-6 col-md-6"> <div class="form-group"> <label>Email:</label> <input name="vip_email" type="email" class="form-control input-sm" placeholder="Digite seu Email" required> </div> </div> </div> <div class="form-group"> <label>Senha:</label> <input type="password" class="form-control" name="vip_senha" placeholder="Sua Senha Para Acessa o (Painel VIP)" required> </div> <div class="form-group"> <label>Sua Steam</label> <input type="text" class="form-control" name="vip_steam" placeholder="Sua Steam Para Nao Houver nenhum Problema" required> </div><hr> <input type="submit" value="Concluir e Pagar" class="btn btn-success btn-block"> </form>'; $insane->setSaida("boxBronze_cadastro", $cadbronze); // PRIMEIRAMENTE DEFINIMOS A SAIDA EM JSON, LOGO APOS TEMOS O NOME QUE IRA SAIR PARA QUE você REQUISITE NO AJAX, E LOGO DPS REPASSAMOS O ARQUIVO QUE IRA APARECER. $insane->fim(); ?>  
    • Por rafab
      Olá. Realizei o download do node.js, porém, quando vou acessar a versão através node - v ou node --version, aparece a mensagem node is not defined. 
      Todos os comandos que escrevo, como por exemplo o clear, aparece o erro clear is not defined. Gostaria de saber como posso resolver esse problema. 
    • Por Jesse&Francinete
      Olá pessoal, tô com um probleminha no meu código, eu tenho uma array com pelo menos 300 keys, peguei esse exemplo: https://www.w3schools.com/js/js_ajax_php.asp
       
      Ele funciona, mas se eu digito: "a" aparece vários registros, meu querer é o seguinte: Se eu digitar: "jesse.pereira" > echo "Usuário válido". Se eu digitar "jesse.pereir" > echo "Usuário inválido".
    • Por luansilva71
      Estou usando javascript para validar alguns campos do formulário como telefone e CPF. O script funciona corretamente da forma que eu quero, o problema é que quando o usuário não digita todos os números da maskara o script não limpa o input, ele aceita aquela quantidade de números.
       
      Façam o teste https://codepen.io/KingRider/pen/qNxror
       
      Eu queria uma ajuda pra fazer com que se o usuário não digitasse a quantidade correta de números, quando ele tirasse o foco o input apagasse os números digitados.
×

Informação importante

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

Este projeto é mantido e patrocinado pelas empresas:
Hospedado por: