ERROR: Call to Undefined Function Verificacpf()!

Asked

Viewed 91 times

0

Hello my code is giving error when checking if the result of a function is TRUE, follow the code below:

<?php	
$conn = new mysqli($servername, $username, $password, $dbname);
	if ($conn->connect_error) {
		die("Conecxão Falhou: " . $conn->connect_error);
	}
	
	echo "Conexao foi um sucesso";
	
if(VerificaCPF($cpf) === TRUE){
	$sql = 'INSERT INTO pessoas VALUES ("'.$nome.'", "'.$cpf.'", "'.$cep.'" , "'.$rua.'", "'.$bairro.'", "'.$cidade.'", "'.$uf.'", "'.$ibge.'")';
	//verificando se os valores foram inseridos//
	if ($conn->query($sql) === TRUE) {
		echo "<br>Os valores foram adicionados corretamente";
	} else {
		echo "<br>Error: " . $sql . "<br>" . $conn->error;
			
	}
}else{
	echo "Os valores nham foram";
}

?>

function VerificaCPF($cpf) {
  if (vercpf(document.frmcpf.cpf.value)) 
    {document.frmcpf.submit();}else 
      {errors="1";if (errors) alert('CPF NÃO VÁLIDO');
  document.retorno = (errors == '');}}
function vercpf (cpf) 
  {if (cpf.length != 11 || cpf == "000.000.000-00" || cpf == "11111111111" || cpf     == "22222222222" || cpf == "33333333333" || cpf == "44444444444" || cpf ==         "55555555555" || cpf == "66666666666" || cpf == "77777777777" || cpf ==           "88888888888" || cpf == "99999999999")
  return false;
 add = 0;
for (i=0; i < 9; i ++)
  add += parseInt(cpf.charAt(i)) * (10 - i);
  rev = 11 - (add % 11);
if (rev == 10 || rev == 11)
  rev = 0;
if (rev != parseInt(cpf.charAt(9)))
  return false;
  add = 0;
for (i = 0; i < 10; i ++)
  add += parseInt(cpf.charAt(i)) * (11 - i);
  rev = 11 - (add % 11);
if (rev == 10 || rev == 11)
  rev = 0;
if (rev != parseInt(cpf.charAt(10)))
  return false;
alert('O CPF INFORMADO É VÁLIDO.');
  return true;}

  • This function is not recognized by php pq was set in javascript logo ... remember that javascript works on the client side and php on the server.

  • then I would have to check the result by java, or use a php code?

  • If the Verificacpf function was created in javascript, you can only use it there

  • If you want to use it in PHP, you should create it in PHP

  • Thanks for the help I’ll finish here.

1 answer

0

Eae galera follows below the reply, I thank already @rray and @Julyano Felipe who helped me for the comments, It was my mistake that was solved thanks to their constructive criticism Thanks.

<?php
function validaCPF($cpf = null) {

	// Verifica se um número foi informado
	if(empty($cpf)) {
		return false;
	}

	// Elimina possivel mascara
	$cpf = ereg_replace('[^0-9]', '', $cpf);
	$cpf = str_pad($cpf, 11, '0', STR_PAD_LEFT);
	 
	// Verifica se o numero de digitos informados é igual a 11
	if (strlen($cpf) != 11) {
		return false;
	}
	// Verifica se nenhuma das sequências invalidas abaixo
	// foi digitada. Caso afirmativo, retorna falso
	else if ($cpf == '00000000000' ||
			$cpf == '11111111111' ||
			$cpf == '22222222222' ||
			$cpf == '33333333333' ||
			$cpf == '44444444444' ||
			$cpf == '55555555555' ||
			$cpf == '66666666666' ||
			$cpf == '77777777777' ||
			$cpf == '88888888888' ||
			$cpf == '99999999999') {
				return false;
				// Calcula os digitos verificadores para verificar se o
				// CPF é válido
			} else {
				 
				for ($t = 9; $t < 11; $t++) {
					 
					for ($d = 0, $c = 0; $c < $t; $c++) {
						$d += $cpf{$c} * (($t + 1) - $c);
					}
					$d = ((10 * $d) % 11) % 10;
					if ($cpf{$c} != $d) {
						return false;
					}
				}

				return true;
			}
}

//declarando variaveis//
	$servername = 'localhost';
	$username = 'root';
	$password = '';
	$dbname = 'meubd';
	$nome = $_POST['nom'];
	$cpf = $_POST['cpf'];
	$cep = $_POST['end'];
	$rua = $_POST['rua'];
	$bairro = $_POST['bairro'];
	$cidade = $_POST['cidade'];
	$uf = $_POST['uf'];
	$ibge = $_POST['ibge'];
	
	$conn = new mysqli($servername, $username, $password, $dbname);
	if ($conn->connect_error) {
		die("Conecxão Falhou: " . $conn->connect_error);
	}
	
	echo "Conexao foi um sucesso";
	
if(validaCPF($cpf) === TRUE){
	$sql = 'INSERT INTO pessoas VALUES ("'.$nome.'", "'.$cpf.'", "'.$cep.'" , "'.$rua.'", "'.$bairro.'", "'.$cidade.'", "'.$uf.'", "'.$ibge.'")';
	//verificando se os valores foram inseridos//
	if ($conn->query($sql) === TRUE) {
		echo "<br>Os valores foram adicionados corretamente";
	} else {
		echo "<br>Error: " . $sql . "<br>" . $conn->error;
			
	}
}else{
	echo "Os valores nham foram";
}

?>

the code that was previously java was implemented to php.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.