Ir para conteúdo

POWERED BY:

Arquivado

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

andre002

[Resolvido] PHP capturar a ip e enviar para o MySQL

Recommended Posts

Galera, o lance é o seguinte, estou meio perdidão, alguém pode me dizer como que faz pra um livro de visitas em php capturar a ip do usuario mandar para o MySQL e ainda exibir na pagina junto com a hora e a data?

 

 

Desde Já Obrigado Pela Atenção

 

Forte Abraço a Todos!!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

completando a resposta do amigo aí de cima...

 

se o banco de dados que você for usar for MySQL, fica o seguinte:


<?
//arquivo de configuração para conexão com o BD
include "config.php"
$ip = $_SERVER['REQUEST_ADDR'];
$hora = now();
mysqlquery("INSERT INTO tabela_do_banco ('IP','Hora') VALUES ('$ip','$hora');
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

No caso para implanta-lo nesse codigo PHP que segeu abaixo seria muito complicado?

 

<?
date_default_timezone_set('America/Sao_Paulo');
include ("conectar.php");

//inclui o nosso arquivo de conexão com o bd

$nome = $_POST['nome'];
$email = $_POST['email'];

$mensagem = $_POST['mensagem'];

//acima resgatamos as variáveis previamente enviadas pelo formulário

$hora = date("H:i");
$data = date("d/m/Y");
$datehora = "A mensagem foi postada em $data às $hora";

/*acima fazemos uma variável que receberá as horas, minutos, dia, mês e ano em que a mensagem foi postada*/

if (strlen($nome) < 4)
echo '<p align="center">Escreva seu nome!<BR><a href="javascript:history.back(1);">voltar</a></p>';
elseif (strlen($email) <= 4)
echo '<p align="center">E-mail inválido!<BR><a href="javascript:history.back(1);">voltar</a></p>';
elseif (strlen($mensagem) <= 4)
echo '<p align="center">Sua mensagem deve conter mais de 4 caracteres!<BR><a href="javascript:history.back(1);">voltar</a></p>';
else{
mysql_query("INSERT INTO mural ( nome , email , mensagem , data ) VALUES ( '$nome' , '$email' , '$mensagem' , '$datehora' ) ") or die(mysql_error());
echo '<p align="center"><b><font
      size=6><font color="#FF0000">Sua mensagem foi enviada com sucesso!</font></font
      size=6></b></p>';
}

/*depois da rotina de confirmação do preenchimento dos campos, inserimos os valores deles dentro da nossa tabela*/

?>

 

Abração Amigo!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok, mais aonde eu coloco esse codigo ali no PHP do livro, já tentei em diversos locais e acaba dando erro no server, da uma ajuda ai amizade.

 

Valeu ai!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

O que aconteceu foi o seguinte se coloco o codigo dessa forma:

 

<?
date_default_timezone_set('America/Sao_Paulo');
include ("conectar.php");
$ip = $_SERVER['REMOTE_ADDR'];

//inclui o nosso arquivo de conexão com o bd

$nome = $_POST['nome'];
$email = $_POST['email'];

$mensagem = $_POST['mensagem'];

//acima resgatamos as variáveis previamente enviadas pelo formulário

$hora = date("H:i");
$data = date("d/m/Y");
$datehora = "A mensagem foi postada em $data às $hora";

/*acima fazemos uma variável que receberá as horas, minutos, dia, mês e ano em que a mensagem foi postada*/

if (strlen($nome) < 4)
echo '<p align="center">Escreva seu nome!<BR><a href="javascript:history.back(1);">voltar</a></p>';
elseif (strlen($email) <= 4)
echo '<p align="center">E-mail inválido!<BR><a href="javascript:history.back(1);">voltar</a></p>';
elseif (strlen($mensagem) <= 4)
echo '<p align="center">Sua mensagem deve conter mais de 4 caracteres!<BR><a href="javascript:history.back(1);">voltar</a></p>';
else{
mysql_query("INSERT INTO mural ( nome , email , mensagem , data , ip) VALUES ( '$nome' , '$email' , '$mensagem' , '$datehora' '$ip' ) ") or die(mysql_error());
echo '<p align="center"><b><font
      size=6><font color="#FF0000">Sua mensagem foi enviada com sucesso!</font></font
      size=6></b></p>';
}
/*depois da rotina de confirmação do preenchimento dos campos, inserimos os valores deles dentro da nossa tabela*/

?>

 

Retorna esse erro

 

Column count doesn't match value count at row 1

Não entendo o que eu estou fazendo de errado.

 

Até Mais!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Deu esse erro de coluna desconhecida???

 

Unknown column 'ip' in 'field list'

E agora kkkkkkkkkkk, depois desse trablhão dizer que a coluna é desconhecida, ufa!!!

 

Valeu Irmão!

 

Amanha eu continuo!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Realmente era isso que você falou, eu tinha criado um compo chamado "CAMPOIP" foi só trocar para "IP" e começou a funcionar.

 

Valeu irmão

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.