Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

iFull

Não executa query depois da validação do cpf

Recommended Posts

Galera, não to conseguindo cadastrar de jeito nenhum, não consigo resolver, poderiam me ajudar? Obrigado.

<?php

require("conect.php");

function validaCPF($cpf)

{

$cpf = str_pad(ereg_replace('[^0-9]', '', $cpf), 11, '0', STR_PAD_LEFT);

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

{

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;

}

}

if(isset($_POST['btvalidar']))

{

$cpf_enviado = validaCPF($_POST['cpft']);

if($cpf_enviado == true)

{ $cpfc = $_POST['cpft'];

$data = date('Y-m-d');

$hora = strftime("%H:%M:%S");

$sqlinsert = "INSERT INTO cpf (cpf,data) VALUES ('$cpfc','$hora')";

mysql_query($sqlinsert) or die ("Não foi possível inserir");

echo "Na data $data e na hora $hora <br> $_post[cpft] foi inserido"; }

elseif($cpf_enviado == false)

echo ("<script> alert('Seu CPF está errado ou é inexistente !'); </script>");

}

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

$c = 0;

 

Isso ta certo ?

 

 

if(isset($_POST['btvalidar']))

{

$cpf_enviado = validaCPF($_POST['cpft']);

if($cpf_enviado == true)

{ $cpfc = $_POST['cpft'];

$data = date('Y-m-d');

$hora = strftime("%H:%M:%S");

$sqlinsert = "INSERT INTO cpf (cpf,data) VALUES ('$cpfc','$hora')";

mysql_query($sqlinsert) or die ("Não foi possível inserir");

echo "Na data $data e na hora $hora <br> $_post[cpft] foi inserido"; }

elseif($cpf_enviado == false)

echo ("<script> alert('Seu CPF está errado ou é inexistente !'); </script>");

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

$c = 0;

Isso ta certo ?

 

aaaaaaaah não sei rs, isso aqui pra mim é estranho: $cpf{$c}

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara a validação está perfeita só não executa a query ;/

 

"$sqlinsert = "INSERT INTO cpf (cpf,data) VALUES ('$cpfc','$hora')"; "

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

 

Galera, quase consegui, agora só preciso acho que arrumar a parte do tempo. Acho que não está funcionando certo ;/

 

 

$dados = mysql_fetch_array($buscacpf) or die ("Não foi possível verificar");
$horacadastro = $dados['data'];
$horaatual = strftime("%H:%M");
$diferenca = $horaatial - $horacadastro;
if ($diferenca >= 3)
{$deleta = mysql_query("DELETE FROM cpf WHERE cpf = '$cpfc'") or die ("Não foi possível deletar"); } 
acho que preciso arrumar essa parte

Compartilhar este post


Link para o post
Compartilhar em outros sites

sso aqui pra mim é estranho: $cpf{$c}

 

Strings podem também ser acessada usando colchetes ($str[42]) ou chaves ($str{42}) para o mesmo propósito. Contudo, esta sintaxe estará obsoleta a partir do PHP 6.

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Carlos Coelho e sobre o tempo? Você teria alguma idéia do que seria porque não está fazendo a subtração ? O cpf está ok a validação funciona perfeitamente . vlw

 

Strings podem também ser acessada usando colchetes ($str[42]) ou chaves ($str{42}) para o mesmo propósito. Contudo, esta sintaxe estará obsoleta a partir do PHP 6.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Primeiro verifique se entrou no if

if($cpf_enviado == true)
{
    echo 'OK';

Como está o tipo de campo data no seu banco de dados? DATE, DATETIME ou TIMESTAMP?

Compartilhar este post


Link para o post
Compartilhar em outros sites


// DATA

$date = date( 'Y-m-d' );

 

// DATA HORA

$date = date( 'Y-m-d H:i:s' );

 

// HORA

$date = date( 'H:i:s' );

 

// TIMESTAMP

$date = time( );

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Blz, vou fazer as alterações e ja posto aqui o resultado, a operação é a mesma né ?

 

$diferenca = $horaatial - $horacadastro; if ($diferenca >= 3)

 

se for + que 3 minutos ele roda a query certo ?



não funciona nem a pau ! :upset:

$data = date('Y-m-d');
$hora = strftime("%H:%M");
$buscacpf = mysql_query('SELECT * FROM `cpf` WHERE 1');
$dados = mysql_fetch_array($buscacpf) or die ("<script> alert('Não foi possível verificar !'); </script>");
$horacadastro = $dados['data'];
$horaatual = date('hm');
$diferenca = $horaatual - $horacadastro;
if ($diferenca >= 100)
{$deleta = mysql_query("DELETE FROM cpf WHERE cpf = '$cpfc'") or die ("Não foi possível deletar"); } 
else  {$sqlinsert = "INSERT INTO cpf (cpf,data) VALUES ('$cpfc','$hora')";}


mysql_query($sqlinsert) or die ("<script> alert('Não foi possível Inserir!');

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se vc quer buscar todos os CPF's[inline]$buscacpf = mysql_query('SELECT * FROM `cpf`');[/inline]

 

Agora, se é o CPF digitado [inline]$buscacpf = mysql_query("SELECT * FROM `cpf` WHERE `cpf` = '$cpf' ");[/inline]

 

Dê um [inline]var_dump( $dados['data'] );[/inline] e me diga o que retornou.

 

 

Para salvar [inline]$query = "INSERT INTO `cpf` ( `cpf`, `data` ) VALUES ( '$cpf', NOW( ) )";[/inline]

 

 

EDIT:

 

Outro problema é salvar apenas a hora, o correto seria salvar data e hora (DATETIME). Se no dia seguinte vc tentar salvar no mesmo horário, o que acontece? Vai dar pau.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Alterando o tipo do campo data para DATETIME, fica fácil verificar a diferença de tempo em segundos.

 

// data do banco de dados
$row[ 'date' ] = '2013-07-10 09:50:55';
$interval_time = time( ) - strtotime( $row[ 'date' ] );

if( $interval_time >= 100 )
{
    // code here
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

não cadastra ... :S

 

if(isset($_POST['btvalidar']))
	{
	$cpf_enviado = validaCPF($_POST['cpft']);
	if($cpf_enviado == true)
		{ 


$hora = time();
$buscacpf = mysql_query("SELECT * FROM `cpf`");
$dados = mysql_fetch_array($buscacpf) or die ("<script> alert('Não foi possível verificar !');location = 'index.html'; </script>");
$horacadastro = $dados['data'];

$id = $dados['id'];
$horaatual = date('H:i:s');
$dados[ 'data' ] = '2013-07-10 09:50:55';
$interval_time = time( ) - strtotime( $dados[ 'data' ] );

if( $interval_time >= 100 )

{$deleta = mysql_query("DELETE FROM `cpf` WHERE `cpf` = '$cpfc'") or die ("Não foi possível deletar"); } 
else  {$sqlinsert = "INSERT INTO cpf (cpf,data) VALUES ('$cpfc','$hora')";}


mysql_query($sqlinsert) or die ("<script> alert('Não foi possível Inserir (hora cadastro $horacadastro e hora atual $horaatual)  !'); </script>");

echo "Na data $data e na hora $hora <br> $cpfc' foi inserido a diferença e $diferenca "; }
	elseif($cpf_enviado == false)
		echo ("<script> alert('Seu CPF está errado ou é inexistente !'); </script>");
	}
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.