Вы не зашли.
Главная » PHP » Общие вопросы по PHP
#1071. Gemorroj Off (107)
Administrator
2014.10.29 18:06
ну, универсальнее - 2 вариант. отдельный класс.
#1072. tipsun Off (19)
Moderator
2014.10.29 19:07
Если делать этим вариантом, то надо делать все классы не статическими, чтоб через конструктор можно было сразу общую конфигу скинуть и забыть. Т.е. все равно в классе мы будем создавать переменную $_cfg
Код:
span style="color: #0000BB"><?phpclass SomeClass{ private $_cfg; public function __construct() { $this->_cfg = Cfg::get[__CLASS__]; }}
Допустим можно наследоваться от Progenitor и в определенном классе просто загрузить всю конфигу и забыть
#1073. Gemorroj Off (107)
Administrator
2014.10.29 20:08
конфиг - синглтон.
Config::getInstance()->get('key');
#1074. tipsun Off (19)
Moderator
2014.10.30 20:08
Gemorroj написал:
конфиг - синглтон.
Config::getInstance()->get('key');
Зачем? Почему не static?
#1075. Gemorroj Off (107)
Administrator
2014.10.30 22:10
а зачем статик? как ты его инициализировать будешь?
#1076. tipsun Off (19)
Moderator
2014.10.31 11:11
Ну через bootstrap можно.
#1077. sql555
Гость
2015.01.21 21:09
привет. Есть запрос

Код:
SELECT COUNT(`id`) AS `cnt`, `name`, `score` FROM `table` WHERE `name` = 'aaa' GROUP BY `name` ORDER BY `score` LIMIT 1
и в общем мне нужно, чтобы этот запрос вывел наибольший score, но выводит он вообще как-то странно... Как быть, подскажите.

нужно вывести из таблицы запись с определнным 'name'(это поле у каждого юзера свое - записей с одинаковым нейм может быть в таблице несколько), причем одну. Соответственно, когда я группирую по 'name' - у меня будет только один результат - хоть с LIMIT 1, хоть без него.
И мне нужен именно тот результат, в котором поле 'score' - наибольшее. Поэтому и пытаюсь отсортировать по этому полю в порядке убывания. А mysql сортирует в данном случае "от балды". Т.е. если есть у меня, например, записи со 'score' 1, 2, 3, 4, 5, то они при добавлении/удалении записи сортируются явно не по убыванию.

Помогите?
#1078. Gemorroj Off (107)
Administrator
2015.01.22 12:12
Код:
SELECT COUNT(1) AS `cnt`, `name`, MAX(`score`) AS `max_score` FROM `table` WHERE `name` = 'aaa' GROUP BY `name`
у тебя там сначала группировка, а потом сортировка. Поэтому ты сначала получаешь 1 запись с name = aaa, а потом эту 1 запись сортируешь
#1079. sql555
Гость
2015.01.22 15:03
еще вопрос
Код:
$q = mysql_query("SELECT `id`, `subject`, `read`, `from`, `lid`, `time`, MAX(`lid`) AS max, (select count(*) FROM `letters` WHERE `id` = '".$id."' AND `to` = '".$id."') AS cnt FROM `chat_letters` WHERE `id` = '".$id."' AND `to` = '".$id."' GROUP BY `from` ORDER BY `read` = 0 DESC, max DESC LIMIT $start, 10;");
непонимаю почему непроисходит сортировка по `read` = 0 DESC

помогите?
#1080. sql555
Гость
2015.01.22 15:03
ето одна таблица, пропуст дописать chat_ в примере.
Страниц: 1106 107 108 109 110118 Все
Главная
WEB
PunBB Mod v0.6.2
0.042 s