Jump to content
Israel Lira

Como faço para implementar o calculo na operação pegando o var INSS e obter o resultado na linha salario * inss

Recommended Posts

<?php

                                    var inss = 8%;


                                          $tabela = '<table border="1" border: solid gray 5px;>';//abre table
                                            $tabela .='<thead>';//abre cabeçalho
                                             $tabela .= '<tr>';//abre uma linha
                                          
                                          $tabela .= '</tr>';//fecha linha
                                          $tabela .='</thead>'; //fecha cabeçalho
                                          $tabela .='<tbody>';//abre corpo da tabela

                                        $db = pg_connect("port=55432 dbname=folha user=fortesrh password=1234");
                                        
                                        $consulta=pg_query($db,"SELECT funcionario.nome, funcionario.cargo, cargo.salario from funcionario INNER JOIN cargo ON funcionario.cargo = cargo.descricao ORDER BY funcionario.nome"); 

                                        while ($linha = pg_fetch_array($consulta)) {//declaração da variável linha trazendo o resultado da query
                                          $tabela .= '<th colspan="2" width="210px">Folha de Pagamento</th>';
                                          $tabela .= '<th colspan="3" width="410px">Data e Assinatura:  ____/____/_____ ___________________________________________________</th>';
                                          $tabela .= '</tr>';//fecha linha
                                          $tabela .= '<th width="170px" height="20px" align="left">Empresa: XP Seriços Demonstrativos Ltda ME</th>';
                                          $tabela .= '<th width="100px" align="left">CNPJ:  00.000.000/0000-00</th>';
                                          $tabela .= '<th width="150px" align="center">Admissão: 10/05/2019</th>';
                                          $tabela .= '<th width="150px" align="center">Competência: Junho de 2019</th>';

                                          $tabela .= '</tr>';//fecha linha
                                          $tabela .= '<tr>'; // abre uma linha
                                          $tabela .= '<td>'.$linha['nome'].'</td>'; // coluna nome do funcionario
                                          $tabela .= '<td align="center">'.$linha['cargo'].'</td>'; // coluna cargo
                                          $tabela .= '<td align="center">'.$linha['salario'].'</td>'; // coluna salario
                                          $tabela .= '<td align="center">'.$linha['salario * inss'].'</td>'; // coluna salario
                                          $tabela .= '</tr>'; // fecha linha
                                          $tabela .= '<th width="550px" colspan="5" align="center">----------------------------------------------------------------------</th>';
                                          $tabela .= '</tr>'; // fecha linha

                                        }
                                         $tabela .='</tbody>'; //fecha corpo
                                         $tabela .= '</table>';//fecha tabela

                                        echo $tabela; // imprime
        
                                    ?>

Spoiler

 

 

Share this post


Link to post
Share on other sites

Siga as etapas abaixo:

 

1º Etapa

 

ATUAL

var inss = 8%;

ALTERAR POR

$inss = 8;

 

2º Etapa

 

ATUAL

$tabela .= '<td align="center">'.$linha['salario * inss'].'</td>';

ALTERAR POR

$tabela .= '<td align="center">' . $linha [ 'salario' ] * ( $inss / 100 ) . '</td>';

 

Share this post


Link to post
Share on other sites
14 horas atrás, ShadowDLL disse:

Siga as etapas abaixo:

 

1º Etapa

 

ATUAL


var inss = 8%;

ALTERAR POR


$inss = 8;

 

2º Etapa

 

ATUAL


$tabela .= '<td align="center">'.$linha['salario * inss'].'</td>';

ALTERAR POR


$tabela .= '<td align="center">' . $linha [ 'salario' ] * ( $inss / 100 ) . '</td>';

 

Apresentou o erro:

 

image.png.958e36d05dc99b45dec67b8744f8fbed.png

 

image.png.fb332ac0ce4da96319ace1e4da05c502.png

 

O valor para calcular: 2990,00 x8% = 239.20

 

Script modificado:

 

<?php

                                        $inss = 8;

                                          $tabela = '<table border="1" border: solid gray 5px;>';//abre table
                                            $tabela .='<thead>';//abre cabeçalho
                                             $tabela .= '<tr>';//abre uma linha
                                          
                                          $tabela .= '</tr>';//fecha linha
                                          $tabela .='</thead>'; //fecha cabeçalho
                                          $tabela .='<tbody>';//abre corpo da tabela

                                        $db = pg_connect("port=55432 dbname=folha user=fortesrh password=1234");
                                        
                                        $consulta=pg_query($db,"SELECT funcionario.nome, funcionario.cargo, cargo.salario from funcionario INNER JOIN cargo ON funcionario.cargo = cargo.descricao ORDER BY funcionario.nome"); 

                                        while ($linha = pg_fetch_array($consulta)) {//declaração da variável linha trazendo o resultado da query
                                          $tabela .= '<th colspan="2" width="210px">Folha de Pagamento</th>';
                                          $tabela .= '<th colspan="3" width="410px">Data e Assinatura:  ____/____/_____ ___________________________________________________</th>';
                                          $tabela .= '</tr>';//fecha linha
                                          $tabela .= '<th width="170px" height="20px" align="left">Empresa: XP Seriços Demonstrativos Ltda ME</th>';
                                          $tabela .= '<th width="100px" align="left">CNPJ:  00.000.000/0000-00</th>';
                                          $tabela .= '<th width="150px" align="center">Admissão: 10/05/2019</th>';
                                          $tabela .= '<th width="150px" align="center">Competência: Junho de 2019</th>';

                                          $tabela .= '</tr>';//fecha linha
                                          $tabela .= '<tr>'; // abre uma linha
                                          $tabela .= '<td>'.$linha['nome'].'</td>'; // coluna nome do funcionario
                                          $tabela .= '<td align="center">'.$linha['cargo'].'</td>'; // coluna cargo
                                          $tabela .= '<td align="center">'.$linha['salario'].'</td>'; // coluna salario
                                          $tabela .= '<td align="center">' . $linha [ 'salario' ] * ( $inss / 100 ) . '</td>';            
                                          $tabela .= '</tr>'; // fecha linha


                                          $tabela .= '<th width="550px" colspan="5" align="center">----------------------------------------------------------------------</th>';
                                          $tabela .= '</tr>'; // fecha linha

                                        }
                                         $tabela .='</tbody>'; //fecha corpo
                                         $tabela .= '</table>';//fecha tabela

                                        echo $tabela; // imprime
        
                                    ?>

 

Share this post


Link to post
Share on other sites

ATUAL

$tabela .= '<td align="center">' . $linha [ 'salario' ] * ( $inss / 100 ) . '</td>';

 

ALTERAR POR

$tabela .= '
	<td align="center">'.
		number_format (
			(
				str_replace (
					',', '.', preg_replace (
						'#[^\d\,]#is', '', $linha [ 'salario' ]
					)
				) * $inss / 100
			), 2, ',', '.'
		)
	.'</td>'
;

 

OBSERVAÇÕES

Se possível evitar o envio de valores formatados

ao banco de dados, pois assim, você evita ter de

fazer o trabalho acima...

Share this post


Link to post
Share on other sites
45 minutos atrás, ShadowDLL disse:

ATUAL


$tabela .= '<td align="center">' . $linha [ 'salario' ] * ( $inss / 100 ) . '</td>';

 

ALTERAR POR


$tabela .= '
	<td align="center">'.
		number_format (
			(
				str_replace (
					',', '.', preg_replace (
						'#[^\d\,]#is', '', $linha [ 'salario' ]
					)
				) * $inss / 100
			), 2, ',', '.'
		)
	.'</td>'
;

 

OBSERVAÇÕES

Se possível evitar o envio de valores formatados

ao banco de dados, pois assim, você evita ter de

fazer o trabalho acima...

 

Show! deu certo. Vou fazer as demais implementações. Muito obrigado.

 

Share this post


Link to post
Share on other sites
1 hora atrás, Israel Lira disse:

 

Show! deu certo. Vou fazer as demais implementações. Muito obrigado.

 

 

A seu dispor ;)

Share this post


Link to post
Share on other sites
Em 12/07/2019 at 21:54, ShadowDLL disse:

 

A seu dispor ;)

 

Tem mais uma situação que tentei mais não avançou. Quero totalizar um somatório de salario + diasdescanso.

 

$tabela .= '<td width="150px" align="center">'.number_format ((str_replace (',', '.', preg_replace ('#[^\d\,]#is', '', $linha['salario'])) + $linha [ 'salario' ] / $diasdescanso), 2, ',', '.').'</td>';

image.png.3f8e614e997d47405c0b0921945d8f56.png

 

 

Share this post


Link to post
Share on other sites
Em 13/07/2019 at 08:53, Israel Lira disse:

 

Tem mais uma situação que tentei mais não avançou. Quero totalizar um somatório de salario + diasdescanso.

 

$tabela .= '<td width="150px" align="center">'.number_format ((str_replace (',', '.', preg_replace ('#[^\d\,]#is', '', $linha['salario'])) + $linha [ 'salario' ] / $diasdescanso), 2, ',', '.').'</td>';

image.png.3f8e614e997d47405c0b0921945d8f56.png

 

 

 

 

Segue exemplo:

 

CÓDIGO

<?php
	$inss = 8;
	$linha = array (
		'nome' => "Israel Lira",
		'cargo' => "ADMINISTRADOR",
		'salario' => "2.990,50"
	);


	# DIAS DESCANSO
	$diasdescanso = 3;

	# SALARIO
	$salario = str_replace (
		',', '.', preg_replace (
			'#[^\d\,]#is', '', $linha['salario']
		)
	);

	$tabela = '<table border="1" border: solid gray 5px;>';//abre table
	$tabela .='<thead>';//abre cabeçalho
	$tabela .= '<tr>';//abre uma linha

	$tabela .= '</tr>';//fecha linha
	$tabela .='</thead>'; //fecha cabeçalho
	$tabela .='<tbody>';//abre corpo da tabela


		$tabela .= '<th colspan="2" width="210px">Folha de Pagamento</th>';
		$tabela .= '<th colspan="3" width="410px">Data e Assinatura:____/____/_____ ___________________________________________________</th>';
		$tabela .= '</tr>';//fecha linha
		$tabela .= '<th width="170px" height="20px" align="left">Empresa: XP Seriços Demonstrativos Ltda ME</th>';
		$tabela .= '<th width="100px" align="left">CNPJ:00.000.000/0000-00</th>';
		$tabela .= '<th width="150px" align="center">Admissão: 10/05/2019</th>';
		$tabela .= '<th width="150px" align="center">Competência: Junho de 2019</th>';
		$tabela .= '<th width="150px" align="center">Salário + Descanso</th>';

		$tabela .= '</tr>';//fecha linha
		$tabela .= '<tr>'; // abre uma linha
		$tabela .= '<td>'.$linha['nome'].'</td>'; // coluna nome do funcionario
		$tabela .= '<td align="center">'.$linha['cargo'].'</td>'; // coluna cargo
		$tabela .= '<td align="center">'.$linha['salario'].'</td>'; // coluna salario
		$tabela .= '
			<td align="center">'.
				number_format (
					(
						$salario * $inss / 100
					), 2, ',', '.'
				)
			.'</td>'
		;

		# DIAS DESCANSO
		$tabela .= '
			<td>'.
				number_format (
					(
						$salario + ( $salario / $diasdescanso )
					), 2, ',', '.'
				).
			'</td>'
		;

		$tabela .= '</tr>'; // fecha linha


		$tabela .= '<th width="550px" colspan="5" align="center">----------------------------------------------------------------------</th>';
		$tabela .= '</tr>'; // fecha linha

	$tabela .='</tbody>'; //fecha corpo
	$tabela .= '</table>';//fecha tabela

	echo $tabela; // imprime
?>

 

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 Caio Vargas
      Boa tarde pessoal blz ?
      Estou com uma dúvida sobre implementação do checkout transparente do mercado pago 
       
      Alguém já fez essa implementação eu estou com dúvida sobre a documentação que não estou conseguindo intender 
       
      Pelo botão eu só consigo insistir um produtos só então a opção correta seria o checkout transparente mesmo se alguém puder me ajudar agradeço 
    • By joeythai
      Bom dia pessoal, minha dúvida é simples, vi que alguns arquivos xml tem a saída de data desta forma  "2020-01-22T09:18:50", como faço pra imprimir a data desta forma ? E o que significa esse T?]
      Eu estou usando o Carbon, to tentando encontrar esse padrão na documentação.
      2018-05-29T17:47:57 2018-05-29T17:47:57
    • By Sapinn
      Resolvi atualizar meu xampp para a versão 7.4.14 e estou com um erro de Internal Server Error que fica em um projeto que estou usando htacess para fazer urls amigáveis o arquivo usados são:
      Arquivo externo:
       
      <IfModule mod_rewrite.c>
          RewriteEngine on
          RewriteRule ^$ public/ [L]
          RewriteRule (.*)public/$1 [L]
      </IfModule>
       
      Dentro da pasta public:
       
      <IfModule mod_rewrite.c>
          Options -Multiviews
          RewriteEngine On
          RewriteBase /unset_mvc/public
          RewriteCond %{REQUEST_FILENAME} !-d
          RewriteCond %{REQUEST_FILENAME} !-f
          RewriteRule ^(.+)$ index.php?url=$1 [QSA,L]
      </IfModule>
       
      Dentro da pasta app:
      Options -Indexes
       
      Preciso de ajuda porquê não sei o que fazer, já tentei apagar algumas coisas no httpd.conf dentro do xampp mas não funcionou.
    • By biakelly
      Oi, vim do fórum de PHP,  eu havia postado uma dúvida lá, mas acredito e por recomendação que minha dúvida seja melhor aplicada aqui.
       
      Bem, estou fazendo uma página que precisa ter a cotação do Bitcoin.
      Nesta pagina preciso de 2 inputs um que traga o preço do bitcoin e outro que traga o preço em real.
      Ex: 1 Bitcoin custa R$ xxx,00 reais (valor padrão)
       
      Mas ao digitar R$100,00 no campo real ele precisa trazer o preço equivalente a quantidade de Bitcoins que vale R$100,00
      O mesmo para o Bitcoin, se eu digitar uma fração ele precisaria trazer o valor em Reais.
       
      Encontrei um site que faz isso (https://dolarhoje.com/bitcoin-hoje/), mas queria algo para minha página parecido
       
       
      Bem, até consigo pegar o valor com este código simples em PHP:
       
      <?php $url = 'https://www.mercadobitcoin.net/api/btc/ticker'; $result = file_get_contents($url); $result = json_decode($result, true); ?>  
      Será que em Javascript é possível fazer isso? Desculpem, entendo quase zero de Javascript
      Vocês conseguem me ajudar?
    • By violin101
      Caros amigo, saudações...

      por favor, me perdoa se postei na opção errada.
       
      estou com a seguinte dúvida.
       
      tenho o seguinte código no cadastro: 1234 0000 4320 9785
       
      como consigo mostrar /inibir os números no meio, para o usuário desta forma: 1234********9785
       
      Grato,
       
      Cesar
×

Important Information

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