Ir para conteúdo
Fórum Script Brasil
  • 0

Formatar campo


Michael_contador

Pergunta

Pessoal, estou precisando de uma ajudona, sou iniciante em PHP e estou aprendento na raça.

Fiz uma tela em PHP de pedido com os campos:

  • Codigo produto
  • Nome do produto
  • Quantidade
  • Valor unitario
  • Total

Criei uma função para formatar o campo valor unitario, mas não estou sabendo usar o evento onkeypress

Segue o código da função em php:

<?php

/**
 * @author Michael Emerson
 * @copyright 2010
 */

function formata($numero)
{    
    if(strpos($numero,'.')!='')
 {
    $var=explode('.',$numero);
    if(strlen($var[0])==4)
    {
      $parte1=substr($var[0],0,1);
      $parte2=substr($var[0],1,3);
      if(strlen($var[1])<2)
      {  
           $formatado=$parte1.'.'.$parte2.','.$var[1].'0';
      }
      else
      {
         $formatado=$parte1.'.'.$parte2.','.$var[1];
      }
    }  
    elseif(strlen($var[0])==5)
    {
       $parte1=substr($var[0],0,2);
       $parte2=substr($var[0],2,3);
       if(strlen($var[1])<2)
       {
            $formatado=$parte1.'.'.$parte2.','.$var[1].'0';
       }
       else
       {
            $formatado=$parte1.'.'.$parte2.','.$var[1];
       }
     }
     elseif(strlen($var[0])==6)
     {
            $parte1=substr($var[0],0,3);
            $parte2=substr($var[0],3,3);
            if(strlen($var[1])<2)
            {
                $formatado=$parte1.'.'.$parte2.','.$var[1].'0';
            }
            else
            {
                $formatado=$parte1.'.'.$parte2.','.$var[1];
            }
          }  
          elseif(strlen($var[0])==7)
          {
            $parte1=substr($var[0],0,1);
            $parte2=substr($var[0],1,3);
            $parte3=substr($var[0],4,3);
            if(strlen($var[1])<2)
            {
                   $formatado=$parte1.'.'.$parte2.'.'.$parte3.','.$var[1].'0';
            }
            else
            {
                $formatado=$parte1.'.'.$parte2.'.'.$parte3.','.$var[1];
                }
            }
            elseif(strlen($var[0])==8)
            {
                $parte1=substr($var[0],0,2);
                $parte2=substr($var[0],2,3);
                $parte3=substr($var[0],5,3);
                if(strlen($var[1])<2)
                {
                    $formatado=$parte1.'.'.$parte2.'.'.$parte3.','.$var[1].'0';
                    }else{
                    $formatado=$parte1.'.'.$parte2.'.'.$parte3.','.$var[1];
                    }
                }
                elseif(strlen($var[0])==9)
                {
                    $parte1=substr($var[0],0,3);
                    $parte2=substr($var[0],3,3);
                    $parte3=substr($var[0],6,3);
                    if(strlen($var[1])<2)
                    {
                       $formatado=$parte1.'.'.$parte2.'.'.$parte3.','.$var[1].'0';
                    }
                    else
                    {
                        $formatado=$parte1.'.'.$parte2.'.'.$parte3.','.$var[1];
                    }
                  }
                  elseif(strlen($var[0])==10)
                  {
                    $parte1=substr($var[0],0,1);
                    $parte2=substr($var[0],1,3);
                    $parte3=substr($var[0],4,3);
                    $parte4=substr($var[0],7,3);
                    if(strlen($var[1])<2)
                    {
                           $formatado=$parte1.'.'.$parte2.'.'.$parte3.'.'.$parte4.','.$var[1].'0';
                    }
                    else
                    {
                        $formatado=$parte1.'.'.$parte2.'.'.$parte3.'.'.$parte4.','.$var[1];
                    }
                  }
                  else
                  {
                    if(strlen($var[1])<2)
                    {
                        $formatado=$var[0].','.$var[1].'0';
                    }
                    else
                    {
                        $formatado=$var[0].','.$var[1];
                    }
                  }
 }
             else
             {     
                  $var=$numero;
              if(strlen($var)==4)
               {
                 $parte1=substr($var,0,1);
                 $parte2=substr($var,1,3);
                 $formatado=$parte1.'.'.$parte2.','.'00';
               }
               elseif(strlen($var)==5)
               {
                $parte1=substr($var,0,2);
                $parte2=substr($var,2,3);
                $formatado=$parte1.'.'.$parte2.','.'00';
               }
               elseif(strlen($var)==6)
               {
                 $parte1=substr($var,0,3);
                 $parte2=substr($var,3,3);
                 $formatado=$parte1.'.'.$parte2.','.'00';
               }
               elseif(strlen($var)==7)
               {
                 $parte1=substr($var,0,1);
                 $parte2=substr($var,1,3);
                 $parte3=substr($var,4,3);
                 $formatado=$parte1.'.'.$parte2.'.'.$parte3.','.'00';
               }
               elseif(strlen($var)==8)
               {
                 $parte1=substr($var,0,2);
                 $parte2=substr($var,2,3);
                 $parte3=substr($var,5,3);
                 $formatado=$parte1.'.'.$parte2.'.'.$parte3.','.'00';
               }
               elseif(strlen($var)==9)
               {
                 $parte1=substr($var,0,3);
                 $parte2=substr($var,3,3);
                 $parte3=substr($var,6,3);
                 $formatado=$parte1.'.'.$parte2.'.'.$parte3.','.'00';
               }
               elseif(strlen($var)==10)
               {
                 $parte1=substr($var,0,1);
                 $parte2=substr($var,1,3);
                 $parte3=substr($var,4,3);
                 $parte4=substr($var,7,3);
                 $formatado=$parte1.'.'.$parte2.'.'.$parte3.'.'.$parte4.','.'00';
               }
               else
               {
                  $formatado=$var.','.'00';
               }
            }
             return $formatado." Reais";
}
//$num = 1234567890;
//echo formata($num);       


[b]TELA DO PEDIDO.PHP ONDE APARECE A TABELA.[/b]

<?php

include ("funcao.php");
include ("validarvendedor_session.php");
include ("Config/config_sistema.php");

//captura o codigo informado no formulario listar_clientes.php
$id = $_POST['id'];

$vlrunitprod_1 = vlrunitprod_1;
$vlrunitprod_2 = vlrunitprod_2;
$vlrunitprod_3 = vlrunitprod_3;
$vlrunitprod_4 = vlrunitprod_4;
$vlrunitprod_5 = vlrunitprod_5;

// faz consulta no banco de dados
$consulta = mysql_query("select * from dados_clientes where id = '$id'");

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled 1</title>
<style type="text/css">
.style2 {
    font-family: Calibri;
}
.style3 {
    font-size: medium;
}
.style4 {
    text-align: center;
}
.style6 {
    font-family: Calibri;
    font-size: small;
    border: 2px solid #FF0000;
    background-color: #C0C0C0;
}
</style>
</head>

<body>

<form method="post" action="gravarpedido">
    <div class="style4">
        <span class="style2"><span class="style3">PEDIDO ON-LINE<br>
        <br>
        </span>
<?php
$linha = mysql_fetch_array($consulta);
?>

        <br>
        PRODUTOS<br>
        </span>
        <table style="width: 95%" class="style6">
            <tr>
                <td class="style2" style="width: 68px">Cód Prod</td>
                <td style="width: 384px">Produto</td>
                <td style="width: 79px">Quant</td>
                <td style="width: 79px">Vlr Unit</td>
                <td>Vlr Total</td>
            </tr>
            <tr>
                <td style="width: 68px">
                <input name="codprod_1" type="text" style="width: 60px" tabindex="1"></td>
                <td style="width: 384px">
                <input name="nomeprod_1" type="text" style="width: 370px" tabindex="2"></td>
                <td style="width: 79px">
                <input name="quantprod_1" type="text" style="width: 60px" tabindex="3"></td>
                <td style="width: 79px">
                <input name="vlrunitprod_1" type="text" style="width: 83px" tabindex="4" onkeypress="formata(vlrunitprod_1)"></td>
                <td>
                <input name="vlrtotalprod_1" type="text" style="width: 83px" tabindex="5"></td>
            </tr>
            <tr>
                <td style="width: 68px">
                <input name="codprod_2" type="text" style="width: 60px" tabindex="6"></td>
                <td style="width: 384px">
                <input name="nomeprod_2" type="text" style="width: 370px" tabindex="7"></td>
                <td style="width: 79px">
                <input name="quantprod_2" type="text" style="width: 60px" tabindex="8"></td>
                <td style="width: 79px">
                <input name="vlrunitprod_2" type="text" style="width: 83px" tabindex="9" onkeypress="formata(vlrunitprod_2)"></td>
                <td>
                <input name="vlrtotalprod_2" type="text" style="width: 83px" tabindex="10"></td>
            </tr>
            <tr>
                <td style="width: 68px">
                <input name="codprod_3" type="text" style="width: 60px" tabindex="11"></td>
                <td style="width: 384px">
                <input name="nomeprod_3" type="text" style="width: 370px" tabindex="12"></td>
                <td style="width: 79px">
                <input name="quantprod_3" type="text" style="width: 60px" tabindex="13"></td>
                <td style="width: 79px">
                <input name="vlrunitprod_3" type="text" style="width: 83px" tabindex="14" onkeypress="formata(vlrunitprod_3)"></td>
                <td>
                <input name="vlrtotalprod_3" type="text" style="width: 83px" tabindex="15"></td>
            </tr>
            <tr>
                <td style="width: 68px">
                <input name="codprod_4" type="text" style="width: 60px" tabindex="16"></td>
                <td style="width: 384px">
                <input name="nomeprod_4" type="text" style="width: 370px" tabindex="17"></td>
                <td style="width: 79px">
                <input name="quantprod_4" type="text" style="width: 60px" tabindex="18"></td>
                <td style="width: 79px">
                <input name="vlrunitprod_4" type="text" style="width: 83px" tabindex="19"onkeypress="formata(vlrunitprod_4)" ></td>
                <td>
                <input name="vlrtotalprod_4" type="text" style="width: 83px" tabindex="20"></td>
            </tr>
            <tr>
                <td style="width: 68px">
                <input name="codprod_5" type="text" style="width: 60px" tabindex="21"></td>
                <td style="width: 384px">
                <input name="nomeprod_5" type="text" style="width: 370px" tabindex="22"></td>
                <td style="width: 79px">
                <input name="quantprod_5" type="text" style="width: 60px" tabindex="23"></td>
                <td style="width: 79px">
                <input name="vlrunitprod_5" type="text" style="width: 83px" tabindex="24" onkeypress="formata(vlrunitprod_5)"></td>
                <td>
                <input name="vlrtotalprod_5" type="text" style="width: 83px" tabindex="25"></td>
            </tr>
            <tr>
                <td style="width: 68px"> </td>
                <td style="width: 384px"> </td>
                <td style="width: 79px"> </td>
                <td style="width: 79px">TOTAL R$.</td>
                <td><input name="Text27" type="text" style="width: 83px"></td>
            </tr>
        </table>
        <br>
        <input name="Gravar" type="submit" value="Gravar"><br>
        <br>
        <br>
    </div>
    <br>
    <a href="menu_vendedor.php">Retornar</a><br>
</form>

</body>

</html>

Editado por Jonathan Queiroz
Remover caixa alta do título e conteúdo conforme regra 3.7 e adicionar tag's (Jonathan)
Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...