Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.07.2009, 18:48   #1
dimon8888
Новичок
Джуниор
 
Регистрация: 20.07.2009
Сообщений: 3
По умолчанию как сделать в меню топ-5 популярных страниц

Скажите пожалуйста как на PHP сделать в меню 5 популярных страниц моего сайта
dimon8888 вне форума Ответить с цитированием
Старый 20.07.2009, 19:52   #2
Jensi
beneto.ru
Форумчанин
 
Регистрация: 09.03.2009
Сообщений: 174
Радость

1) Для каждой странички считаешь кол-во просмотров
2) Где больше всего просмотров, то и выводишь первые 5 результатов

Что-то ещё?
Jensi вне форума Ответить с цитированием
Старый 20.07.2009, 20:19   #3
dimon8888
Новичок
Джуниор
 
Регистрация: 20.07.2009
Сообщений: 3
По умолчанию

Спасибо,а как сделать чтобы был не url,а ссылка с названием страницы.

PHP код:
<?php

 
$INFO
['sql_host'] = "localhost";
$INFO['sql_user'] = "username";
$INFO['sql_pass'] = "userpass";
$INFO['sql_database'] = "my_db";
 
/* Top 10 сегодня */
function MySQLReadToday()
{
$result mysql_query ("SELECT * FROM `my_log` ORDER BY `today` DESC LIMIT 0 , 10 ") or print ("Query failed");
$new_arr = array();
while (
$row mysql_fetch_array($resultMYSQL_ASSOC))
{
    if (
time()<$row['date']) // если сутки еще не прошли
    
{
        
$new_arr[] = $row;
    }
}
return 
$new_arr;
}
 
/* Top 10 за все время работы счетчика */
function MySQLReadAll()
{
$result mysql_query ("SELECT * FROM `my_log` ORDER BY `all` DESC LIMIT 0 , 10 ") or print ("Query failed");
$new_arr = array();
while (
$row mysql_fetch_array($resultMYSQL_ASSOC))
{
    
$new_arr[] = $row;
}
return 
$new_arr;
}
 
/* по хэш-сумме получить url страницы */
function MySQLRead_url($id)
{
$id addslashes($id);
$result mysql_query ("SELECT * FROM `my_log_urls` WHERE `page_id` LIKE '".$id."'");
return (array)
mysql_fetch_assoc($result);
}
 
/* печать таблицы с данными */
function print_table($data)
{
echo <<<END
<table border="1" width="100%" align="center">
    <tr>
        <td rowspan="2" align="center" valign="middle">URL страницы</td>
        <td colspan="3" align="center" valign="middle" width="235">Просмотры страниц</td>
    </tr>
    <tr>
        <td height="35" align="center" valign="middle" width="125">дата доступа</td>
        <td height="35" align="center" valign="middle" width="55">сегодня</td>
        <td height="35" align="center" valign="middle" width="55">всего</td>
    </tr>
END;
foreach(
$data as $val)
{
    
$tmp MySQLRead_url($val['page_id']);
    
$url "<a href=\"http://".$_SERVER['HTTP_HOST'].$tmp['page_url']."\">http://".$_SERVER['HTTP_HOST'].$tmp['page_url']."</a>";
    
$date date("d.m.y H:i:s"$val['date']);
    
$today $val['today'];
    
$all $val['all'];
    echo <<<END
    <tr>
        <td valign="middle">
$url</td>
        <td align="center" valign="middle">
$date</td>
        <td align="center" valign="middle" width="55">
$today</td>
        <td align="center" valign="middle" width="55">
$all</td>
    </tr>
END;
}
echo 
"</table>";
}
 
$link mysql_connect($INFO['sql_host'], $INFO['sql_user'], $INFO['sql_pass']); // Соединение с MySQL
mysql_select_db ($INFO['sql_database']); // Выбор базы данных
 
/* Самые популярные страницы сегодня */
$data MySQLReadToday(); // получение данных из MySQL таблицы
echo "<h1>Самые популярные страницы в течении суток</h1>";
print_table($data); // печать таблицы с данными
 
/* Самые популярные страницы за все время */
$data MySQLReadAll(); // получение данных из MySQL таблицы
echo "<h1>Самые популярные за все время</h1>";
print_table($data); // печать таблицы с данными
?>

Последний раз редактировалось SkyM@n; 21.07.2009 в 19:41.
dimon8888 вне форума Ответить с цитированием
Старый 20.07.2009, 22:50   #4
Jensi
beneto.ru
Форумчанин
 
Регистрация: 09.03.2009
Сообщений: 174
По умолчанию

Цитата:
Спасибо,а как сделать чтобы был не url,а ссылка с названием страницы
Это где нужно?
Код:
<td rowspan="2" align="center" valign="middle">URL страницы</td>
Это?
<a href="index.php" title="бла">О_о</a>
Jensi вне форума Ответить с цитированием
Старый 22.07.2009, 14:05   #5
dimon8888
Новичок
Джуниор
 
Регистрация: 20.07.2009
Сообщений: 3
По умолчанию а вот в эту строчку что надо вставить?

$url = "<a href=\"http://".$_SERVER['HTTP_HOST'].$tmp['page_url']."\">http://".$_SERVER['HTTP_HOST'].$tmp['page_url']."</a>";
dimon8888 вне форума Ответить с цитированием
Старый 22.07.2009, 23:00   #6
Jensi
beneto.ru
Форумчанин
 
Регистрация: 09.03.2009
Сообщений: 174
По умолчанию

Цитата:
а вот в эту строчку что надо вставить?
Код:
$url = "<a href=\"http://".$_SERVER['HTTP_HOST'].$tmp['page_url']."\">
http://".$_SERVER['HTTP_HOST'].$tmp['page_url']."</a>";
Эмм..., а зачем в неё что-то вставлять?
p.s.: конкретнее, что нужно? Код ужасный на самом деле
Jensi вне форума Ответить с цитированием
Старый 25.07.2009, 08:02   #7
Знающий PHP
 
Регистрация: 25.07.2009
Сообщений: 3
По умолчанию

Че вы ему голову пудрите
чтобы сделать ссылку на другую страницу или же если на переход.На основе Php.
Это делается методом функции link, делается это просто....
пишим:
function link($link,$title)
{
echo "<a href='$link'>$title</a>";
}
Echo "<br>";

link("http://адрес страницы","как будет называться");
также ты можешь link(); перенести в Любом направлении.
Дапустим "function link()" у меня здесь, а "link();" я хочу поставить на верх. Берем ставим, все теперь она выше написаного!

ну или же если я не о том подумал, ты хочешь вывести 15 ссылок в Топ, тогда способом
while()

Последний раз редактировалось Знающий PHP; 25.07.2009 в 08:33.
Знающий PHP вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
TreeView как сделать, чтобы попап-меню выпадало для определенных ветвей? KWN, lnc Помощь студентам 11 08.03.2009 01:01
TreeView как сделать, чтобы попап-меню выпадало для определенных ветвей? KWN, lnc Помощь студентам 4 03.03.2009 17:04
Меню с Items в виде набора Bitmap (как меню редактирования в Word'е) chandrasecar Мультимедиа в Delphi 7 14.01.2009 09:20
как сделать вверрху меню с ссылками, после перехода по которым подгружались бы сайты. Chaos-Delta HTML и CSS 30 12.01.2008 11:21
как сделать в дельфи меню... Илюха Общие вопросы Delphi 7 19.11.2007 22:15