Ir para conteúdo
Fórum Script Brasil
  • 0

Mostrar Ip


zerebeu

Pergunta

boas

estou a fazer um script que deve indicar ao usuário qual que este é o visitante número x e o seu IP é Y...para tal criei uma tabela que tem o id(auto-increment) e o respectivo IP e usei o seguinte script:

<?php

$abrir=mysql_connect("localhost","root","") or die ("impossivel ligar á base de dados");

mysql_select_db(visitas,$abrir);

$id=mysql_num_rows(mysql_query("SELECT * FROM visitas"));

$ip=mysql_query("SELECT ip FROM `visitas` WHERE `id` = $id");

echo "id é $id e o ip é $ip";

?>

output é "id é 200 e o ip é Resource id #3"

o que está a falhar?Desde já agradeço

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Tenta assim:

<?php

    require 'config.php';
    
        $ip = $_SERVER['REMOTE_ADDR'];
        
        $query = mysql_query("SELECT ip, total FROM `visitas` WHERE `ip` = " . $ip . "");
        
        $result = mysql_fetch_array($query); 
    
    $mostra_ip = $resultado["ip"];
    $total = $resultado["total"];
    
    echo "Olá " . $mostra_ip . ", você já nos visitou " . $total . " vezes.";
        
?>

Eu n testei, mas acho que presta.

Editado por Gutto
Link para o comentário
Compartilhar em outros sites

  • 0

Você não está recuperando a linha obtida na consulta. Segue abaixo os erros no seu código

<?php
$abrir=mysql_connect("localhost","root","") or die ("impossivel ligar á base de dados");

mysql_select_db(visitas,$abrir);

$id=mysql_num_rows(mysql_query("SELECT * FROM visitas"));

$ip=mysql_query("SELECT ip FROM `visitas` WHERE `id` = $id");

echo "id é $id e o ip é $ip";
?>
$id=mysql_num_rows(mysql_query("SELECT * FROM visitas")); Aqui você está armazenando o total de linhas da tabela dentro da variavel $id $ip=mysql_query("SELECT ip FROM `visitas` WHERE `id` = $id"); Aqui você está executando uma consulta e não obtendo uma linha. Este é o motivo pelo qual a saída foi "id é 200 e o ip é Resource id #3" mysql_select_db(visitas,$abrir); troque por
mysql_select_db("visitas",$abrir); //utilize as aspas ;)
Só corrigindo o script do Gutto... Ele tinha colocado $resultado["ip"] ao invés de $result
<?php

    require 'config.php';
    
        $ip = $_SERVER['REMOTE_ADDR'];
        
        $query = mysql_query("SELECT ip, total FROM `visitas` WHERE `ip` = " . $ip . "");
        
        $result = mysql_fetch_array($query);
    
    $mostra_ip = $result["ip"];
    $total = $result["total"];
    
    echo "Olá " . $mostra_ip . ", você já nos visitou " . $total . " vezes.";
        
?>

Dá uma olhada na documentação:

mysql_num_rows: http://br2.php.net/manual/pt_BR/function.mysql-num-rows.php

mysql_fetch_array: http://br2.php.net/manual/pt_BR/function.m...fetch-array.php

T+

André

Editado por ard-webmaster
Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...