Marcado: PHP
- Este tópico contém 1 resposta, 2 vozes e foi atualizado pela última vez 3 anos, 6 meses atrás por
Tutora Mayla.
-
AutorPosts
-
-
11 de outubro de 2021 às 13:11 #78227
Felippe Donatto Oliveira
ParticipanteOlá pessoal, estou criando um sistema baseado nos cursos de PHP e Mysql tanto do Curso em Vídeo como do estudonauta.
E estou enfrentando um problema.
Quando eu lanço um valor monetário, tipo R$ 2,000.00 ele só chega no banco de dados o valor (2.00), o campo que recebe o valor no banco está configurado com doble 14,2, mas já usei float, decimal e problema continua o mesmo. Como posso fazer para quando eu subir os valores eles fiquem configurados? Vou colocar os códigos tanto do campo do formulário(cod1) quanto da captura dos dados(cod2) e também da parte onde imprimo os valores do banco(cod3)
cod1 – Esse é o campo que do formulário
<input type=”text” name=”valor” id=”valor” placeholder=”R$ ” min=”1.00″ max=”10.000,000″ onkeypress=”$(this).mask(‘R$ ##.###.##0.00’, {reverse: true});”>
cod2 –
<?php
if(is_admin() || is_gerente() || is_caixa() || is_vendedor()){
$cliente = $_POST[‘cliente’] ?? null;
$boleta = $_POST[‘boleta’] ?? null;
$vendedor = $_POST[‘vendedor’] ?? null;
$pecas = $_POST[‘pecas’] ?? null;
$valor = $_POST[‘valor’] ?? null;
$desconto = $_POST[‘desconto’] ?? null;
$pagamento = $_POST[‘pagamento’] ?? null;
$dia = $_POST[‘dia’] ?? null;
$mes = $_POST[‘mes’] ?? null;
$ano = $_POST[‘ano’] ?? null;if(empty($cliente) || empty($boleta || empty($vendedor) || empty($pecas) || empty($valor) || empty($desconto) ||empty($pagamento) || empty($dia) || empty($mes) || empty($ano) )){
echo msg_erro(‘Todos os dados são obrigatorios’);
echo voltar_lancamento();
}else{
$q = “INSERT INTO caixa(cliente,boleta,vendedor,pecas,valor,desconto,pagamento,dia,mes,ano) VALUES(‘$cliente’, ‘$boleta’, ‘$vendedor’, ‘$pecas’, ‘$valor’, ‘$desconto’, ‘$pagamento’,’$dia’,’$mes’,’$ano’)”;if($banco->query($q)){
echo msg_sucesso(“A venda foi cadastrado com sucesso!”);
echo voltar_lancamento();
}else{
echo msg_erro(‘Desculpe algo deu errado!’);
echo voltar_lancamento();
}
}
}
?>cod3
if ($busca->num_rows > 0) {
while($reg = $busca->fetch_object()){
echo “<tr><td>$reg->cliente<td>$reg->boleta<td>$reg->vendedor<td>$reg->pecas<td>$reg->valor<td>$reg->desconto<td>$reg->pagamento<td>$reg->dia<td>$reg->mes<td>$reg->ano”;
if(is_admin() || is_gerente()){
echo “<td><i class=’material-icons’>add_circle</i> <td>id class=’add’><i class=’material-icons edit’>edit</i>“;
}elseif (is_caixa()){
echo “<td><i class=’material-icons’>add_circle</i>”;
echo “<td>id class=’add’><i class=’material-icons edit’>edit</i>“;
}
if(is_admin()){
echo “<td>id class=’add’><i class=’material-icons delete’>delete</i>“;
}
}
} else {
echo “<p>Nenhum registro encontrado…</p>”;
}
} -
18 de outubro de 2021 às 20:06 #78711
Tutora Mayla
MestreFelippe, tente uma solução usando a função
str_replace
do próprio PHP para realizar a troca de vírgulas por pontos e vice-versa antes de enviar para o banco de dados e veja se assim o valor é salvo corretamente.Espero ter ajudado, quaisquer dúvidas basta entrar em contato.
-
-
AutorPosts
- Você deve fazer login para responder a este tópico.