2013-09-02 2 views
0

Я делаю топ-10 с наиболее похожими на некоторые страницы (не спрашивайте, почему это просто вариант на моем сайте для ссылок из моей базы данных)получить топ 10 из моего запроса sql +, если проверить

Теперь я делаю это на этом пути, поэтому я вижу все ссылки, а количество ссылок facebook похоже на ссылку. Теперь я хочу сделать топ-10, но не знаю как? Нужно ли хранить их все с помощью нового оператора if в массиве, а затем показывать его.

Как вы, ребята, справитесь с этим?

PHP:

function get_the_fb_like($paginaurl){ 

     $url = $paginaurl; // setting a value in $url variable 

     $params = 'select comment_count, share_count, like_count from link_stat where url = "'.$url.'"'; // preparing the query for the url 

     $component = urlencode($params); // prepare the url for fetching the information from facebook 

     $url = 'http://graph.facebook.com/fql?q='.$component; // constructed url 

     $fbLIkeAndSahre = json_decode(file_get_contents_curl($url)); // convert the json from our response to object 

     $getFbStatus = $fbLIkeAndSahre->data['0']; 

     return $getFbStatus->like_count; // return the number of like of the passed url 

    } 

    $result = $pdo->prepare('SELECT * FROM photos where geupload = :maandenjaar AND goedgekeurd = :goed'); 

    $result->execute(array(':maandenjaar' => $maandenjaar, ':goed' => 'ja')); 

    $numrows = $result->rowCount(); 

    if($numrows != 0){ 
     foreach ($result as $row) { 

      if(get_the_fb_like('?photo='.$row['id'].'') != 0){ 
       echo ' 
          <div class="imgwrap"> 
           <a href="'.$row['id'].'" title="'.$row['caption'].'"><img src="'.$row['location'].'" alt="'.$row['beschrijving'].'" /></a><br /> 
           <p>Likes: '.get_the_fb_like('?photo='.$row['id'].'').'</p> 
          </div> 
         '; 
      } 

     } 
    }else{ 
     echo 'Er zijn geen afbeeldingen deze maand'; 
    } 

EDIT:

Вы, ребята, на самом деле не понимают, на мой вопрос, извините. Я попытаюсь объяснить это немного больше. У меня есть база данных с идентификатором изображения. Это может понравиться ppl.

Для подобного счета, я использую facebook api по URL-адресу, чтобы получить как счет URL-адреса. Так что я не могу LIMIT 10 из моей базы данных, потому что я не хранил счет в моей базе данных.

+0

предел 10 из Facebook затем –

+0

Он должен быть HIGHEST счетчик для ТОП-10. Так что я не могу просто ограничить 10 .. скрипт просто возьмет 10 первых. – Kets

+1

вот почему вы заказываете like_count –

ответ

0

попробовать

$params = 'select comment_count, share_count, like_count from link_stat where url = "'.$url.'" ORDER BY like_count desc LIMIT 10'; // preparing the query for the url 
+0

См. Мое редактирование для получения дополнительной информации, потому что это не сработает, я думаю. – Kets

0

Предполагая, что все ваши ссылки хранятся в таблице link_stat, которая выглядит как случай из вашего вопроса, вы можете просто отсортировать запрос таблицы и вернуть первые 10 результатов.

SELECT * 
FROM link_stat 
ORDER BY like_count 
LIMIT 0, 10 
+0

См. Мое редактирование для получения дополнительной информации, потому что это не сработает. – Kets

Смежные вопросы