Ir ao conteúdo
  • Cadastre-se
rogermoreira

valor por extenso em formulário php

Recommended Posts

Olá galera,

 

estou tentando rodar um código para gerar numero por extenso em meu formulário de recibos mas ainda não consigo fazer a função responder ao texto digitado:

<?phpif(isset($_POST['ok'])) {$valor=$_POST['valor'];function valorPorExtenso($valor, $complemento=true) {	$singular = array("centavo", "real", "mil", "milhão", "bilhão", "trilhão", "quatrilhão");	$plural = array("centavos", "reais", "mil", "milhões", "bilhões", "trilhões","quatrilhões"); 	$c = array("", "cem", "duzentos", "trezentos", "quatrocentos","quinhentos", "seiscentos", "setecentos", "oitocentos", "novecentos");	$d = array("", "dez", "vinte", "trinta", "quarenta", "cinquenta","sessenta", "setenta", "oitenta", "noventa");	$d10 = array("dez", "onze", "doze", "treze", "quatorze", "quinze","dezesseis", "dezesete", "dezoito", "dezenove");	$u = array("", "um", "dois", "três", "quatro", "cinco", "seis","sete", "oito", "nove"); 	$z=0; 	$valor = number_format($valor, 2, ".", ".");	$inteiro = explode(".", $valor);	for($i=0;$i<count($inteiro);$i++)		for($ii=strlen($inteiro[$i]);$ii<3;$ii++)			$inteiro[$i] = "0".$inteiro[$i]; 	// $fim identifica onde que deve se dar junção de centenas por "e" ou por ","  	$fim = count($inteiro) - ($inteiro[count($inteiro)-1] > 0 ? 1 : 2);	for ($i=0;$i<count($inteiro);$i++) {		$valor = $inteiro[$i];		$rc = (($valor > 100) && ($valor < 200)) ? "cento" : $c[$valor[0]];		$rd = ($valor[1] < 2) ? "" : $d[$valor[1]];		$ru = ($valor > 0) ? (($valor[1] == 1) ? $d10[$valor[2]] : $u[$valor[2]]) : "";			$r = $rc.(($rc && ($rd || $ru)) ? " e " : "").$rd.(($rd && $ru) ? " e " : "").$ru;		$t = count($inteiro)-1-$i;		if ($complemento == true) {			$r .= $r ? " ".($valor > 1 ? $plural[$t] : $singular[$t]) : "";			if ($valor == "000")$z++; elseif ($z > 0) $z--;			if (($t==1) && ($z>0) && ($inteiro[0] > 0)) $r .= (($z>1) ? " de " : "").$plural[$t]; 		}		if ($r) $rt = $rt . ((($i > 0) && ($i <= $fim) && ($inteiro[0] > 0) && ($z < 1)) ? ( ($i < $fim) ? ", " : " e ") : " ") . $r;	} 	return($rt ? $rt : "zero");}$extenso = valorPorExtenso($valor, true);}?><!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=utf-8" /><title>Documento sem título</title><style type="text/css">body table tr {	font-size: 14px;	text-align: right;}td {	font-family: Arial, Helvetica, sans-serif;}#cabeçalho {	font-size: 18px;	font-weight: bold;	text-align: left;}.cabeçalho {	font-size: 18px;	font-weight: bold;}body p {	text-align: right;}</style><style media="print">.botao {display: none;}</style></head><body><table border="2">  <tr>    <td><table><form method="POST" name="ok" action="" id="ok"><tr class="cabeçalho">           <td width="298" id="cabeçalho">R E C I B O  </td>             <div align="right">VALOR R$<input name="valor" type="text" class="cabeçalho" id="valor" size="20" style="background-color: #CCC; border: ridge" />          </div></td>        </tr></form>        <td colspan="2">Recebi(emos)de          <label for="textfield"></label>          <input name="textfield" type="text" id="textfield" size="81" /></td>        </tr>      <tr>        <td colspan="2">a quantia de          <input name="extenso" type="text" id="extenso" size="81" style="background-color: #CCC; border: ridge"  value="<?php echo $extenso; ?>" /></td>        </tr>      <tr>        <td colspan="2"><input name="textfield3" type="text" id="textfield3" size="97" style="background-color: #CCC; border: ridge" /></td>      </tr>      <tr>        <td colspan="2">Referente a          <input name="textfield4" type="text" id="textfield4" size="81" style="background-color: #CCC; border: ridge" /></td>        </tr>      <tr>        <td colspan="2"><input name="textfield5" type="text" id="textfield5" size="97" style="background-color: #CCC; border: ridge" /></td>      </tr>      <tr>        <td colspan="2"><div align="left">e para clareza, firmamos o presente. </div></td>      </tr>      <tr>        <td colspan="2"><label for="textfield6"></label>          <input name="textfield7" type="text" id="textfield7" value="Registro" size="32" />          ,          <input name="textfield8" type="text" id="textfield8" size="10" />          de          <input name="textfield6" type="text" id="textfield6" size="22" />          de          <input name="textfield9" type="text" id="textfield9" size="10" /></td>      </tr>      <tr>        <td colspan="2"><p> </p>          <p>Assinatura ...................................................................................................................................</p></td>      </tr>      <tr>        <td colspan="2">Nome          <input name="textfield10" type="text" id="textfield10" size="51" />          CPF          <input name="textfield11" type="text" id="textfield11" size="30" /></td>      </tr>      <tr>        <td colspan="2">Endereço          <input name="textfield12" type="text" id="textfield12" size="87" /></td>      </tr>    </table></td>  </tr></table>   <script language="JavaScript1.2"><!--function DoPrinting(){if (!window.print){alert("Use o Netscape  ou Internet Explorer \n nas versões 4.0 ou superior!")return}window.print()}//--></script>  <div align="center">  <form> <input type="button" value="imprimir" OnClick="javascript:DoPrinting()" class="botao"></form></body></html>

criei o formulario html e tirei a função da internet

 

 

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





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×