Статистика: коя страница колко пъти е посетена

IvayloGoranov

Registered
Здравейте. Питам се как да направя извеждане на страници по посещаемост.
Имам да речем страница едно посетена 10 пъти, страница втора посетена 30 пъти като се взима когато се изкарва информацията коя колко пъти е посетена инфо от
HTML:
<title>BGRAPAR DOT COM - ПРЕДСТАВЯНЕ НА ПЕСЕН: Ice - Бог ми е свидетел </title>
Примерно?
 
IvayloGoranov каза:
tedo96 каза:
Когато вадиш слагаш ORDER BY `poseshtenia` DESC
Там е въпроса, че въпроса ми е как да го направя ?
$q = mysql_query("SELECT `table` ORDER BY `poseshtenia` DESC") or die(mysql_error());
while($row = mysql_fetch_assoc($q)) {
echo $row['table'];
}
 
Ако нямаш таблица с посещенията си създай една такава и я актуализирай при всяко влизане във всяка страница :)
 
tedo96 каза:
IvayloGoranov каза:
tedo96 каза:
Когато вадиш слагаш ORDER BY `poseshtenia` DESC
Там е въпроса, че въпроса ми е как да го направя ?
$q = mysql_query("SELECT `table` ORDER BY `poseshtenia` DESC") or die(mysql_error());
while($row = mysql_fetch_assoc($q)) {
echo $row['table'];
}
Това може ли да се направи да работи с твоя код?
Код:
<head>
 <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1251">
 </head>
 <body>

<?php
$data= date("d.m.y"); 
$database='......';//база данни
$user='...........';//user на базата данни
$password='.............';//пас на базата данни
$table='demobroiach';//име на таблицата 


mysql_connect(localhost,$user,$password);
mysql_select_db($database) or die( "Има проблем с базата данни");

$query_broi = "SELECT id FROM $table where data='$data' " ;
$result_broi = mysql_query($query_broi);
$poseshteniq_dnes=mysql_num_rows($result_broi);

echo "Посещения днес: ".$poseshteniq_dnes."<br/>";

$query_unic = "SELECT COUNT(id) AS ipsort FROM $table where data='$data' GROUP by ip" ;
$result_unic = mysql_query($query_unic);
$poseshteniq_unic_dnes=mysql_num_rows($result_unic);

echo "Уникални днес: ".$poseshteniq_unic_dnes."<br/>";





// определяме колко реда да ни показва. В случая 20 на страница.
$broinastranica = 100;

// от коя страница да почне да показва.Може да искаме да е от втора или от последна.
$pageNum = 1;

// ако има получени данни $_GET['page'] ще покаже страницата с номер $_GET['page'] 
if(isset($_GET['page']))
{
$pageNum = $_GET['page'];
}

//тука определяме кои редове ще се показват - примерно ако $_GET['page']=2
// ще покаже от 20 до 40-ти ред.
$redove = ($pageNum - 1) * $broinastranica;
//заявката ще върне само посочените редове - примерно от 20 до 40 в зависимост от $_GET['page']
$query = " SELECT* FROM $table order by id desc" .
" LIMIT $redove, $broinastranica";
$result = mysql_query($query) ;

echo "<table border=1>";
// print-ваме посочените редове в таблица.
while($row = mysql_fetch_array($result))
{
echo '<tr><td>'.$row['id'].'</td><td>'.$row['data'].'</td><td>'.$row['chas'].'</td><td>'.$row['ip'].
 '</td><td>'.$row['browser'].'</td></tr>';
}

echo"</table>";


// проверяваме таблицата колко редове има
$query = "SELECT COUNT(id) AS numrows FROM $table";
$result = mysql_query($query) or die('Error, query failed');
$row = mysql_fetch_array($result, MYSQL_ASSOC);
$numrows = $row['numrows'];


$maxPage = ceil($numrows/$broinastranica);

$self = $_SERVER['PHP_SELF'];
$nomeranastranici = '';

for($page = 1; $page <= $maxPage; $page++)
{
if ($page == $pageNum)
{
$nomeranastranici .= " $page ";
}
else
{
$nomeranastranici .= " <a href="$self?page=$page">$page</a> ";
}
}



// създаване на ликовете [предишна] [следваща]
// както и линковете [първа] и [последна]


if ($pageNum > 1)
{
$page = $pageNum - 1;
$predishna = " <a href="$self?page=$page"> [<<<<<] </a> ";

$parva = " <a href="$self?page=1">[първа]</a> ";
}
else
{
$predishna = ' ';
$parva = ' ';
}

if ($pageNum < $maxPage)
{
$page = $pageNum + 1;
$sledvashta = " <a href="$self?page=$page"> [>>>>>] </a> ";

$posledna = " <a href="$self?page=$maxPage">[последна]</a> ";
}
else
{
$sledvashta = ' ';
$posledna = ' ';
}

// показваме
echo $parva . $predishna . $nomeranastranici . $sledvashta . $posledna;




mysql_close();
?>
 

Back
Горе