Проблем с системата на hitove24

onestarr

Registered
Проблема е следния когато някой гледа клип и после рефрешне страницата колкото пъти и да я рефрешне клипа все прави по едно гледане, как да направя така че клипа да прави само по-едно гледане от един IP адрес?

МОЛЯ ПОМОГНЕТЕ МИ.
 
onestarr каза:
Проблема е следния когато някой гледа клип и после рефрешне страницата колкото пъти и да я рефрешне клипа все прави по едно гледане, как да направя така че клипа да прави само по-едно гледане от един IP адрес?

МОЛЯ ПОМОГНЕТЕ МИ.
Е дaй мaлко код нa фaйлa... и дa ти го нaпрaвим...
Инaче прaвиш еднa проверкa със if и еднa колонa в която дa се зaписвaт aйпи aдресите и си готов ;)
 
Това е кода
<div align="right" style="float: right;">
<big><b><?php echo $r['views'] ?></b></big> Гледания
</div>

Този код е изкаран от файла play.php
 
onestarr каза:
Това е кода
<div align="right" style="float: right;">
<big><b><?php echo $r['views'] ?></b></big> Гледания
</div>

Този код е изкаран от файла play.php


Както каза колегата правиш си една проверка и един запис в базата и си ти.

И по конкретно взимаш ип-то на клиента :)

PHP:
 $_SERVER['REMOTE_ADDR'];
като го слагаш в една променлива разбира се

после го записваш в базата

и накрая си правиш една проверка от рода на:

$ip = $_SERVER['REMOTE_ADDR'];
if($ip == $zaqvkata ot bazata) {
echo "Гледането е възможно само веднъж от това ип";
}

няма нужда от else тъй като ако не е в списъка директно си го гледа.
Вероятно ще кажеш сега че искаш и да бъде на 24ч.
$tm = time();
пишеш в базата един timestamp и праскаш една проверка

ако сегашното време е по-малко от записаното в базата да му плюе че неможе да го гледа.

А да и трябва да си запишеш time в базата.

А и разбира се че ако сложи прокси тази проверка горе няма да става за нищо но тук е пълно със скриптове ще намериш.
 
Ето кода за гледанията
<div align="right" style="float: right;">

<?php
$upd_v = mysql_query("UPDATE videos SET views = views +1 WHERE id = '".$_GET['id']."'");
$upd_v_d = mysql_query("UPDATE videos SET views_daily +1 WHERE id = '".$_GET['id']."'");
?>

<big><b><?php echo $r['views'] ?></b></big> гледания
</div>

Кое трябва да се промени и кажеете как да направя таблицата точно
 
Здравей замести твоя с този като добавиш нов ред в таблица video с име ip

PHP:
		$quip = mysql_query("SELECT * FROM videos WHERE id = '".$_GET['id']."'");
		$ruip = mysql_fetch_array($quip);		
        $ip = $_SERVER['REMOTE_ADDR'];
        if($ip == $ruip['ip']) 	{
        $errorip = "Вие сте гледали този видеоклип. Общо ";		
		}else{
		$upd_v = mysql_query("UPDATE videos SET views = views +1, ip = '".$ip."' WHERE id = '".$_GET['id']."'");
		$upd_v_d = mysql_query("UPDATE videos SET views_daily = views_daily +1, ip = '".$ip."' WHERE id = '".$_GET['id']."'");		
		}
 
Другия вариант е да запазваш в бизквитка ид-то на кличпето и при влизане на страницата с клипчето, да проверяваш дали тази бизквитка съществува.
 

Back
Горе