Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

remover mascara

Agradeceria ajuda para remover mascara telefone e persistir no bd.

 <div class="form-group col-md-4">
     <label for="inputTelefone">Telefone</label>
     <input type="text" placeholder="numero"
      class="form-control" name="telefone" id="phone" placeholder="só numeros" onkeypress="mask(this, mphone);" onblur="mask(this, mphone);">
   </div>

<script type="text/javascript">


    function mask(o, f) {
  setTimeout(function() {
    var v = mphone(o.value);
    if (v != o.value) {
      o.value = v;
    }
  }, 1);
}

function mphone(v) {
  var r = v.replace(/\D/g, "");
  r = r.replace(/^0/, "");
  if (r.length > 10) {
    r = r.replace(/^(\d\d)(\d{5})(\d{4}).*/, "($1) $2-$3");
  } else if (r.length > 5) {
    r = r.replace(/^(\d\d)(\d{4})(\d{0,4}).*/, "($1) $2-$3");
  } else if (r.length > 2) {
    r = r.replace(/^(\d\d)(\d{0,5})/, "($1) $2");
  } else {
    r = r.replace(/^(\d*)/, "($1");
  }
  return r;
}
    </script>

segue cliente.php

 public function getTelefone()
    {
        return $this->telefone;
    }

    public function setTelefone($telefone)
    {

        $this->telefone = $telefone;

    }
2 respostas
solução!

Olá Sergio!

Pra remover a mascara acredito que basta você usar o replace no que você não quer que tenha.

Para persistir o primeiro passo é você enviar esse telefone como parametro de requisição para o PHP (GET ou POST) e depois usar esse parametro nos códigos SQL através de PDO (ou outra maneira).

Espero que tenha ajudado!

Bons estudos! ^^

Oi Guilherme, obrigado pela sua atenção. Eu estou enviando ao BD via POST e fiz assim

<h1 class="h3 mb-3 font-weight-normal"> <?=$ehAlteracao ? "Alterar" : "" ?>
  </h1><form action="<?=$action ?>"  method="post" >

Quanto a máscara ela está funcionando, o problema era no BD. O tipo estava como VARCHAR(9) e eu alterei para VARCHAR(15) aumentando o tamanho e funcionou. Porque são 11 algarismos os recebidos pelo BD sem o parenteses do DDD e o traço.

Abraços!!!