コード例 #1
0
ファイル: seo.php プロジェクト: Nikitian/fl-ru-damp
 /**
  * Выбор пользователей для динамического контента
  *
  * @param string $keys    Ключи выбора ("раз, два, три" - ключи обычно поле meta_keywords из таблицы seo_sections, идут через запятую)
  * @param string|integer $city    Город выбора (Может быть как ИД города, так и название его)
  * @return array|boolean Результат выборки, false если никого не выбрало
  */
 public function getDinamicContent($keys, $city)
 {
     global $DB;
     $exp = explode(",", $keys);
     foreach ($exp as $k => $v) {
         $exp[$k] = "'" . trim($v) . "'";
     }
     if ($city != -1 && $city != 'Все') {
         if (!is_numeric($city)) {
             require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/city.php";
             $city = city::getCityId($city);
         }
     } else {
         $city = '';
     }
     $sql = "SELECT u.uid, u.photo, u.role, u.login, u.uname, u.usurname, u.is_pro, u.is_team, u.reg_date, u.info_for_reg, u.country, u.city, u.birthday, sm.completed_cnt as completed_sbr_cnt\n                FROM words w \n                JOIN portf_word pw ON pw.wid = w.id \n                JOIN freelancer u ON u.uid = pw.uid " . ($city ? "AND city = ?i" : "") . " AND u.is_pro = true AND u.is_banned='0' \n                LEFT JOIN sbr_meta sm ON sm.user_id = u.uid\n                WHERE w.name IN (" . implode(", ", $exp) . ") \n                GROUP BY u.uid, u.photo, u.role, u.login, u.uname, u.usurname, u.is_pro, u.is_team, u.reg_date, u.info_for_reg, u.country, u.city, u.birthday, sm.completed_cnt\n                ORDER BY RANDOM() LIMIT 9";
     $result = $DB->rows($sql, $city);
     if ($result) {
         return $result;
     }
     return false;
 }