Meus amigos, estou com uma dúvida cruel. Achei um pedaço aqui outro ali e montei esse script, mas não sei o que há de errado. E também quero compartilhar com a comunidade. Pode ajudar aos outros também.
Script:
<?php
/*
@autor: Gabriel Rodrigues de Moura
@email: blx32@srmoura.com.br
*/
// Função que valida o CPF
function validaCPF($cpf)
{ // Verifiva se o número digitado contém todos os digitos
$cpf = str_pad(ereg_replace('[^0-9]', '', $cpf), 11, '0', STR_PAD_LEFT);
// Verifica se nenhuma das sequências abaixo foi digitada, caso seja, retorna falso
if (strlen($cpf) != 11 || $cpf == '00000000000' || $cpf == '11111111111' || $cpf == '22222222222' || $cpf == '33333333333' || $cpf == '44444444444' || $cpf == '55555555555' || $cpf == '66666666666' || $cpf == '77777777777' || $cpf == '88888888888' || $cpf == '99999999999')
{
return false;
}
else
{ // Calcula os números para verificar se o CPF é verdadeiro
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;
}
}
// Verifica se o botão de validação foi acionado
if(isset($_POST['btvalidar']))
{// Adiciona o numero enviado na variavel $cpf_enviado, poderia ser outro nome, e executa a função acima
$cpf_enviado = validaCPF($_POST['cpf']);
// Verifica a resposta da função e exibe na tela
if($cpf_enviado == true)
// Script para enviar ao BD se CPF True.
$host= 'localhost';
$bd= 'pedidos';
$senhabd= 'hackme';
$userbd = 'root' ;
// RECEBENDO OS DADOS PREENCHIDOS DO FORMULÁRIO !
$nome = $_POST ["nome"]; //atribuição do campo "nome" vindo do formulário para variavel
$email = $_POST ["email"]; //atribuição do campo "email" vindo do formulário para variavel
$cpf= $_POST ["cpf"]; //atribuição do campo "cpf" vindo do formulário para variavel
$pedido = $_POST ["pedido"];
$tel= $_POST ["tel"]
//atribuição do campo "telefone" vindo do formulário para variavel
$cep = $_POST ["cep"];
//Gravando no banco de dados !
//conectando com o localhost - mysql
$conexao = mysql_connect($host,$bd, $senhabd); if (!$conexao) die ("Erro de conexão com localhost, o seguinte erro ocorreu -> ".mysql_error());
//conectando com a tabela do banco de dados $banco = mysql_select_db($bd,$conexao); if (!$banco) die ("Erro de conexão com banco de dados, o seguinte erro ocorreu -> ".mysql_error());
$query = "INSERT INTO `pedidos` ( `nome` , `email` , `cpf` , `pedido` , `telefone` , `cep` , `id` ) VALUES ('$nome', '$email', '$cpf', '$pedido', '$tel', '$cep', '')"; mysql_query($query,$conexao);
echo "Seu pedido foi realizado com sucesso!<br> Entraremos em contato.";
Pergunta
blx32
Meus amigos, estou com uma dúvida cruel. Achei um pedaço aqui outro ali e montei esse script, mas não sei o que há de errado. E também quero compartilhar com a comunidade. Pode ajudar aos outros também.
Script:
<?php
/*
@autor: Gabriel Rodrigues de Moura
@email: blx32@srmoura.com.br
*/
// Função que valida o CPF
function validaCPF($cpf)
{ // Verifiva se o número digitado contém todos os digitos
$cpf = str_pad(ereg_replace('[^0-9]', '', $cpf), 11, '0', STR_PAD_LEFT);
// Verifica se nenhuma das sequências abaixo foi digitada, caso seja, retorna falso
if (strlen($cpf) != 11 || $cpf == '00000000000' || $cpf == '11111111111' || $cpf == '22222222222' || $cpf == '33333333333' || $cpf == '44444444444' || $cpf == '55555555555' || $cpf == '66666666666' || $cpf == '77777777777' || $cpf == '88888888888' || $cpf == '99999999999')
{
return false;
}
else
{ // Calcula os números para verificar se o CPF é verdadeiro
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;
}
}
// Verifica se o botão de validação foi acionado
if(isset($_POST['btvalidar']))
{// Adiciona o numero enviado na variavel $cpf_enviado, poderia ser outro nome, e executa a função acima
$cpf_enviado = validaCPF($_POST['cpf']);
// Verifica a resposta da função e exibe na tela
if($cpf_enviado == true)
// Script para enviar ao BD se CPF True.
$host= 'localhost';
$bd= 'pedidos';
$senhabd= 'hackme';
$userbd = 'root' ;
// RECEBENDO OS DADOS PREENCHIDOS DO FORMULÁRIO !
$nome = $_POST ["nome"]; //atribuição do campo "nome" vindo do formulário para variavel
$email = $_POST ["email"]; //atribuição do campo "email" vindo do formulário para variavel
$cpf= $_POST ["cpf"]; //atribuição do campo "cpf" vindo do formulário para variavel
$pedido = $_POST ["pedido"];
$tel= $_POST ["tel"]
//atribuição do campo "telefone" vindo do formulário para variavel
$cep = $_POST ["cep"];
//Gravando no banco de dados !
//conectando com o localhost - mysql
$conexao = mysql_connect($host,$bd, $senhabd); if (!$conexao) die ("Erro de conexão com localhost, o seguinte erro ocorreu -> ".mysql_error());
//conectando com a tabela do banco de dados $banco = mysql_select_db($bd,$conexao); if (!$banco) die ("Erro de conexão com banco de dados, o seguinte erro ocorreu -> ".mysql_error());
$query = "INSERT INTO `pedidos` ( `nome` , `email` , `cpf` , `pedido` , `telefone` , `cep` , `id` ) VALUES ('$nome', '$email', '$cpf', '$pedido', '$tel', '$cep', '')"; mysql_query($query,$conexao);
echo "Seu pedido foi realizado com sucesso!<br> Entraremos em contato.";
elseif($cpf_enviado == false)
echo "Por favor, insira um CPF valido.";
}
?>
E uma outra página em HTML enviando os dados para essa:
<html>
<head>
</head>
<body>
<form action="valida_cpf.php" method="post" name="cpf" id="cpf">
CPF:
<label>
<input name="cpf" type="text" id="cpf" size="11" maxlength="11">
</label><br>
Nome:
<label>
<input name="nome" type="text" id="nome" size="" maxlength="">
</label><br>
Email:
<label>
<input name="email" type="text" id="email" size="" maxlength="">
</label><br>
Pedido:
<label>
<input name="pedido" type="text" id="pedido" size="" maxlength="">
</label>
<br>
Cep:
<label>
<input name="cep" type="text" id="cep" size="11" maxlength="11">
</label>
<label>
<input name="btvalidar" type="submit" id="btvalidar" value=" Enviar ">
</label>
</form>
</body>
</html>
Como posso fazer funcionar???
Editado por blx32Complementado.
Link para o comentário
Compartilhar em outros sites
3 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.