Счетчик посещений
Помогите, пожалуйста! Хотел сделать счетчик уникальных посещений, т.е. чтобы проверяло ip адрес и если такой уже есть, то не заносило бы в базу, а если есть, то заносило бы... В общем, я тут поделал... и ничего не получилось! Посмотрите, пожалуйста, в чем ошибка в коде!
<?
if(isset($_SERVER["HTTP_X_FORWARDED_FOR"]))
{
$ip = getenv("HTTP_X_FORWARDED_FOR");
}
else
{
$ip = getenv("REMOTE_ADDR");
}
echo "$ip
";
$conn = mysql_connect('localhost','root','');
$db = mysql_select_db('news', $conn);
$sql = "select ip from online where ip = \"$ip\"";
$res = mysql_query($sql, $conn);
$num = mysql_numrows($res);
if($num = 0) {
$sql1 = "insert into online (ip) values (\"$ip\")";
$res1 = mysql_query($sql1, $conn);
echo "пользователь $ip занесен в базу.";
}
?>
Если это не очень хороший способ считать "хиты", то подскажите, как теоретически сделать лучше!:)
Цитата:
Originally posted by Andius
Здравствуйте!
Помогите, пожалуйста! Хотел сделать счетчик уникальных посещений, т.е. чтобы проверяло ip адрес и если такой уже есть, то не заносило бы в базу, а если есть, то заносило бы... В общем, я тут поделал... и ничего не получилось!
<?
if(isset($_SERVER['HTTP_X_FORWARDED_FOR']))
{
$ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
}
else
{
$ip = $_SERVER['REMOTE_ADDR'];
}
echo "$ip
";
$conn = mysql_connect('localhost','root','');
$db = mysql_select_db('news', $conn);
$sql = "SELECT ip FROM online WHERE ip = '$ip' ;";
$res = mysql_query($sql, $conn);
$num = mysql_numrows($res);
if($num == 0) {
$sql1 = "INSERT INTO online (ip) values ('$ip') ;";
$res1 = mysql_query($sql1, $conn);
echo "пользователь $ip занесен в базу.";
}
= это присваивание
== это сравнение.
?>
Здравствуйте!
Помогите, пожалуйста! Хотел сделать счетчик уникальных посещений, т.е. чтобы проверяло ip адрес и если такой уже есть, то не заносило бы в базу, а если есть, то заносило бы... В общем, я тут поделал... и ничего не получилось!
<?
if(isset($_SERVER['HTTP_X_FORWARDED_FOR']))
{
$ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
}
else
{
$ip = $_SERVER['REMOTE_ADDR'];
}
echo "$ip
";
$conn = mysql_connect('localhost','root','');
$db = mysql_select_db('news', $conn);
$sql = "SELECT ip FROM online WHERE ip = '$ip' ;";
$res = mysql_query($sql, $conn);
$num = mysql_numrows($res);
if($num == 0) {
$sql1 = "INSERT INTO online (ip) values ('$ip') ;";
$res1 = mysql_query($sql1, $conn);
echo "пользователь $ip занесен в базу.";
}
= это присваивание
== это сравнение.
?>
Дествительно как-то глупо получилось... зато теперь буду знать!:)