Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Вывести рейтинг из БД и отсортировать записи по рейтингу
 
 автор: wolf95   (27.07.2013 в 21:20)   письмо автору
 
 

Короче есть БД и в БД есть записи, нужно отсортировать записи по рейтингу. Есть в таблице столбцы r+, r-, Количество посяшений и Количество комментариев.
Нужно составить алгоритм и по алгоритму вывести данные.

Я попробовал так.

$array = array();
while($row = mysql_fetch_array($query)) {
$array[] = array("id" => $row[id], "r+" => $row['r+'], "r-" => $row['r-'], "view" => $row[view], "win" => $row[win], "img" => $row[img], "name" => $row[name]);               
            }
            
            foreach($array as $key => $row){
                $a[$key] = $row['r+'] * 5;
                $b[$key] = $row['r-'] * 2.5;
                $sum[] = ($a[$key] + $b[$key]) / $b[$key];
                $img[$key] = $row['img'];
                $name[$key] = $row['name'];
            sort($sum);
            
            echo "<h5>$name[$key]</h5>";
            echo "<img src=\"$img[$key]\" width=\"100\"/>";
            echo " ".abs($sum[0]);    
            }

Получается отсортировать числа, но чтоб вывели и фотографию и имя, и.т. на первое место и.т.д никак. И алгоритм не правильный

  Ответить  
 
 автор: Valick   (27.07.2013 в 22:29)   письмо автору
 
   для: wolf95   (27.07.2013 в 21:20)
 

Тут кагбе сортировку надо делать средствами СУРБД, а не "лепить горбатого к стенке"
Непонятно, каким образом определяется рейтинг?

  Ответить  
 
 автор: wolf95   (28.07.2013 в 00:38)   письмо автору
 
   для: Valick   (27.07.2013 в 22:29)
 

Я понимаю как ты говоришь ))
$query = mysql_query("SELECT * FROM `raiting` ORDER BY `raiting` DESC");

мне не так надо_)) Мне нужно вывести рейтинг+ и рейтинг-, потом к ним суммировать количество посящений и количество просмотров. Потом вывести тот запись у которого рейтинг будет выше)

я там на рейтинг+ сделал умножение 5 баллов а на рейтинг- умножение 2,5 баллов. Потом попытался вывести того у которого рейтинг выше, не получилось

  Ответить  
 
 автор: Valick   (28.07.2013 в 01:05)   письмо автору
 
   для: wolf95   (28.07.2013 в 00:38)
 

Нет не понимаешь))
ORDER BY можно по нескольким полям и выражениям (хотя лучше только по полям, которые в отличии от выражения можно и нужно индексировать)

  Ответить  
 
 автор: wolf95   (28.07.2013 в 11:36)   письмо автору
 
   для: Valick   (28.07.2013 в 01:05)
 

Эх где же ты раньше то был)) Спасибо очень помог уже 3 день над этим мучался )))

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования