Ir para conteúdo

alissong

Members
  • Total de itens

    515
  • Registro em

  • Última visita

Reputação

1 Comum

1 Seguidor

Sobre alissong

Informações Pessoais

  • Localização
    Belo Horizonte

Últimos Visitantes

497.133 visualizações
  1. Ted k', Você é o cara. Muito obrigado................. Funcionou beleza. Um abraço. Alissong
  2. 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.
  3. Imprimir na Impressora Bematech M-20 com php

    Pessoal, peguei esse código na NET e fiz algumas alterações o arquivo imprimir.txt esta sendo gerado, mas não estou sabendo como enviar esses dados via php para impressora Bematech M-20. Veja código impressao.php abaixo: <?php #Arquivo de funções ************************************* include("conexao/bdinc.php"); #******************************************************** /* * Gerar um arquivo .txt para imprimir na impressora Bematech MP-20 MI */ $n_colunas = 40; // 40 colunas por linha /** * Adiciona a quantidade necessaria de espaços no inicio * da string informada para deixa-la centralizada na tela * * @global int $n_colunas Numero maximo de caracteres aceitos * @param string $info String a ser centralizada * @return string */ function centraliza($info) { global $n_colunas; $aux = strlen($info); if ($aux < $n_colunas) { // calcula quantos espaços devem ser adicionados // antes da string para deixa-la centralizada $espacos = floor(($n_colunas - $aux) / 2); $espaco = ''; for ($i = 0; $i < $espacos; $i++){ $espaco .= ' '; } // retorna a string com os espaços necessários para centraliza-la return $espaco.$info; } else { // se for maior ou igual ao número de colunas // retorna a string cortada com o número máximo de colunas. return substr($info, 0, $n_colunas); } } /** * Adiciona a quantidade de espaços informados na String * passada na possição informada. * * Se a string informada for maior que a quantidade de posições * informada, então corta a string para ela ter a quantidade * de caracteres exata das posições. * * @param string $string String a ter os espaços adicionados. * @param int $posicoes Qtde de posições da coluna * @param string $onde Onde será adicionar os espaços. I (inicio) ou F (final). * @return string */ function addEspacos($string, $posicoes, $onde) { $aux = strlen($string); if ($aux >= $posicoes) return substr ($string, 0, $posicoes); $dif = $posicoes - $aux; $espacos = ''; for($i = 0; $i < $dif; $i++) { $espacos .= ' '; } if ($onde === 'I') return $espacos.$string; else return $string.$espacos; } $txt_cabecalho = array(); $txt_itens = array(); $txt_valor_total = ''; $txt_rodape = array(); $txt_cabecalho[] = 'Razão social da empresa aqui'; $txt_cabecalho[] = 'CNPJ da empresa aqui'; $txt_cabecalho[] = ' '; // força pular uma linha entre o cabeçalho e os itens $txt_itens[] = array('Cod.', 'Descrição', 'Un', 'Qtd', 'V. UN', 'Subtotal'); $tot_itens = 0; $cod = 1; //trazendo o produto $sql = "SELECT mov_saida.cod_produto,produto.descricao,produto.unidade,mov_saida.valor_unitario, mov_saida.q_saida,mov_saida.subtotal FROM mov_saida,produto WHERE mov_saida.cod_produto=produto.cod_produto AND mov_saida.cod_produto = '$cod'"; $res = mysqli_query($con,$sql); //VERIFICA A QUANTIDADE DE REGISTROS RETORNADOS $registros = mysqli_num_rows($res); if($registros > 0){ while ($linha = mysqli_fetch_array($res)){ $cod = $linha[0]; $descricao = $linha[1]; $unidade = $linha[2]; $valor_unitario = number_format(($linha[3]), 2,',',' '); $q_saida = number_format(($linha[4]), 2,',',' '); $subtotal = number_format(($linha[5]), 2,',',' '); $txt_itens[] = array($cod,$descricao,$unidade,$valor_unitario,$q_saida,$subtotal); $tot_itens += $subtotal; } }//fecha if $aux_valor_total = 'Total Geral: '.number_format(($tot_itens), 2,',',' '); // calcula o total de espaços que deve ser adicionado antes do "Sub-total" para alinhado a esquerda $total_espacos = $n_colunas - strlen($aux_valor_total); $espacos = ''; for($i = 0; $i < $total_espacos; $i++){ $espacos .= ' '; } $txt_valor_total = $espacos.$aux_valor_total; $txt_rodape[] = 'Cód. Cliente: 150'; $txt_rodape[] = 'CPF/CNPJ: 999.999.999-99'; $txt_rodape[] = 'Nome do cliente'; $txt_rodape[] = ' '; // força pular uma linha $txt_rodape[] = '________________________________________'; $txt_rodape[] = ' Assinatura do Cliente '; // centraliza todas as posições do array $txt_cabecalho $cabecalho = array_map("centraliza", $txt_cabecalho); /* para cada linha de item (array) existente no array $txt_itens, * adiciona cada posição da linha em um novo array $itens * fazendo a formatação dos espaçamentos entre cada coluna * da linha através da função "addEspacos" */ foreach ($txt_itens as $item) { /* * Cod. => máximo de 5 colunas * Produto => máximo de 11 colunas * Env. => máximo de 4 colunas * Qtd => máximo de 7 colunas * V. UN => máximo de 7 colunas * Total => máximo de 7 colunas * * $itens[] = 'Cod. Produto Env. Qtd V. UN Total' */ $itens[] = addEspacos($item[0], 5, 'F') . addEspacos($item[1], 11, 'F') . addEspacos($item[2], 4, 'I') . addEspacos($item[3], 6, 'I') . addEspacos($item[4], 7, 'I') . addEspacos($item[5], 9, 'I') ; } /* concatena o cabelhaço, os itens, o sub-total e rodapé * adicionando uma quebra de linha "\r\n" ao final de cada * item dos arrays $cabecalho, $itens, $txt_rodape */ $txt = implode("\r\n", $cabecalho) . "\r\n" . implode("\r\n", $itens) . "\r\n" . $txt_valor_total // Subtotal . "\r\n\r\n" . implode("\r\n", $txt_rodape); // caminho e nome onde o TXT será criado no servidor $file = 'uploads/nome_arquivo.txt'; // cria o arquivo $_file = fopen($file,"w"); fwrite($_file,$txt); fclose($_file); header("Pragma: public"); // Força o header para salvar o arquivo header("Content-type: application/save"); header("X-Download-Options: noopen "); // For IE8 header("X-Content-Type-Options: nosniff"); // For IE8 // Pré define o nome do arquivo header("Content-Disposition: attachment; filename=imprimir.txt"); header("Expires: 0"); header("Pragma: no-cache"); // Lê o arquivo para download readfile($file); exit; ?> Agora veja o anexo do arquivo imprimir.txt gerado: Portanto, sabe como enviar esses dados gerado direto na impressora quando o usuário insert um pedido? imprimir.txt
×

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: