Jump to content
Fórum Script Brasil
  • 0

Mostrar Ip


zerebeu
 Share

Question

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 to comment
Share on other sites

2 answers to this question

Recommended Posts

  • 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.

Edited by Gutto
Link to comment
Share on other 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é

Edited by ard-webmaster
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



  • Forum Statistics

    • Total Topics
      151k
    • Total Posts
      649.1k
×
×
  • Create New...