- Joined
- Jun 11, 2008
- Messages
- 647
- Reaction score
- 182
това е лента, която се показва над останалия текст в сайта приканваща потребителя да гласува за вашият сайт.При гласуване ip адреса на потребителя се записва в базата данни и 24 часа или колкото сте посочили в конфигурационият файл няма да му се появява
Слагате тоя код в Query Analyzer
conf.php
index.php
vote.php
dell.php
От време на време стартирайте del.php, което ще изтрие ненужните записи в базата данни.
DEMO
Credits:
-devent
-Mortred (edit)
Thanks to newguy for help !!
Слагате тоя код в Query Analyzer
Code:
CREATE TABLE [bgtop] (
[ip] [varchar] (33) default NULL,
[ctime] [varchar] (33) default NULL
)
GO
conf.php
Code:
<?
$server = "IP";
$dbuser = "SQL User";
$dbpass = "SQL PASS";
$dbname = "vote";
$dbtable = "bgtop";
$conn=mssql_connect('$server','$dbuser','$dbpass');
$selected=mssql_select_db('MuOnline', $conn);
$ip = $_SERVER["REMOTE_ADDR"];
$link = "http://bgtop.net/in.php/123456789"; // тук посочи твоя линк.
$time = time();
$vtime = "86400"; // това е времето в секунди, за което ще може да се гласува. в случая е 24 часа.
$dtime = "345600"; // времето, след което ще се изтриват ненужните записи. в случая е 4 дни(72 часа)
echo '<a href="vote.php"><div style="width: 100%; height: 22px; position: absolute; top: 0px; left: 0px; z-index: 100; background-color: white; text-align: center; font-size: 15px; color: red;"> Натисни тук за да гласуваш за сайта :)</div></a>';
?>
index.php
Code:
<?
include("conf.php");
$sql = mssql_query("SELECT ctime FROM $dbtable WHERE ip=\"$ip\"");
if($row = mssql_fetch_array($sql)) {
$calc = $row['ctime'] + $vtime;
if ($calc < $time) { show(); }
}
else { show(); }
?>
vote.php
Code:
<?
ob_start();
include("conf.php");
$sql = mssql_query("SELECT ctime FROM $dbtable WHERE ip=\"$ip\"");
if($row = mssql_fetch_array($sql)) {
$calc = $row['ctime'] + $vtime;
if ($calc > $time) { echo "Можете да гласувате само по веднъж за 24 часа!"; }
else {
$sqlQ = mssql_query("UPDATE $dbtable SET ctime = \"$time\" WHERE ip=\"$ip\"");
header("location: $link");
}
}
else {
$sql = mssql_query("INSERT into `$dbtable`(`ip`,`ctime`) VALUES ('$ip','$time')");
header("location: $link");
}
?>
Code:
<?
include("conf.php");
$calc = $time - $dtime;
$total = mssql_result(mssql_query("SELECT COUNT(ip) FROM $dbtable WHERE ctime < \"$calc\""), 0);
$i = 0;
while($i < $total) {
$sql = mssql_query("DELETE from $dbtable WHERE ctime < \"$calc\"");
$i++;
}
echo "Ненужните записи са изтрити успешно!";
?>
DEMO
Credits:
-devent
-Mortred (edit)
Thanks to newguy for help !!
Last edited: