а можно как-то вот это объединить в один запрос?? Чтоб сразу шел подсчет и по полю regid и по полю cityid.В качестве помощи есть следующая закономерность. Длина всех regid=2 (например 11 или 12), а длина всех cityid=4 (например 1110 или 1210)
Я думал, это уже будет очевидно :)
$db->query(" UPDATE `".DB_PREFIX."_region` AS `r` SET `counter` = ((SELECT COUNT(*) FROM `".DB_PREFIX."_catalog` AS `c` WHERE `c`.`regid` = `r`.`regid`) + (SELECT COUNT(*) FROM `".DB_PREFIX."_catalog` AS `c2` WHERE `c2`.`cityid` = `r`.`regid`))
Ну примерно как то так (полей всех не знаю, посему поля наугад)
$db->query("SELECT `r`.`regid`, COUNT(`c`.`id`) AS `countregion` FROM `".DB_PREFIX."_region` AS `r` LEFT JOIN `".DB_PREFIX."_catalog` AS `c` ON `c`.`regid` = `r`.`regid` GROUP BY `r`.`id`");
Chukcha: Аргументируйте, а если... js отключен? (не для флуда, причина отключения может быть разная)
js может быть и отключен, все ровно будет работать. А лучше за # тем, что есть вариант, когда браузер распознает # как запрос к прокрутке страницы в начало. Расписывать не буду, это связано с якорями.
Zion-i2: А в void(0);" тоже нужно айди добавить <?php echo $id; ?> или там везде нули должны быть? Просто работает и так и так, но как правильно?
javascript:void(0); нужен для того, что бы страницу не перегрузило, можно например использовать и # но лучше js
Можно и просто onclick="toAtjax(1);" заменить на onclick="return toAtjax(1);" и в href писать все что угодно, при условии, что функция будет возвращать false
А как перебирать так,
если на синтаксис ругается?
И в примере получается, если echo $xml->items-list->item->dddd['Id'];
то не пропускает items-list из за дефиса
$xml = (array)$xml;
$xml['items-list']->item->dddd['Id'];
ну так, навскидку ,раз лень разбираться с объектами :)
а можно как-то вот это объединить в один запрос?? Чтоб сразу шел подсчет и по полю regid и по полю cityid.В качестве помощи есть следующая закономерность. Длина всех regid=2 (например 11 или 12), а длина всех cityid=4 (например 1110 или 1210)
Я думал, это уже будет очевидно :)
$db->query("
UPDATE
`".DB_PREFIX."_region` AS `r`
SET
`counter` = ((SELECT COUNT(*) FROM `".DB_PREFIX."_catalog` AS `c` WHERE `c`.`regid` = `r`.`regid`) + (SELECT COUNT(*) FROM `".DB_PREFIX."_catalog` AS `c2` WHERE `c2`.`cityid` = `r`.`regid`))
");
Модератор форума пусть рассудит кому что присуще.
Я не модератор, но по правилам форума нужно указывать уровень ЗП
Спасибо, не курю :)
А нужно, а то ведь новый работник может тоже не курить внутренние правила Вашей фирмы.
А еще очень интересно, почему у Вас идут сначала "условия" потом "Требования (желательные)" и потом снова условия, но немножко другие?
А нельзя как-то оптимизировать UPDATE?
Вы бы стразу задачу ставили правильно :)
Писал на коленке, нада проверить
ПС не ленитесь использовать ` и AS - очень полезно, поверите :)
А в вашем 2-м варианте - нужно использовать LIMIT 1 для ускорения.
Забыл спросить - индексы выставлены?
Ну примерно как то так (полей всех не знаю, посему поля наугад)
Но зачем нагружать обработчик событий, если, так будет тоже работать
<a href="javascript:toAtjax(1)"
Будет работать. Вот только href есть только у a, onclick - можно повесить на любой элемент. Да и читаемость кода падает.
Кстати # будет заносится в историю, и мешать юзеру, если нужно back нажимать.
При отключенном js уже пофик, куда перебросит.
Ну далеко не всегда пофик.
Аргументируйте, а если... js отключен? (не для флуда, причина отключения может быть разная)
js может быть и отключен, все ровно будет работать. А лучше за # тем, что есть вариант, когда браузер распознает # как запрос к прокрутке страницы в начало. Расписывать не буду, это связано с якорями.
А в void(0);" тоже нужно айди добавить <?php echo $id; ?> или там везде нули должны быть? Просто работает и так и так, но как правильно?
javascript:void(0); нужен для того, что бы страницу не перегрузило, можно например использовать и # но лучше js
Можно и просто onclick="toAtjax(1);" заменить на onclick="return toAtjax(1);" и в href писать все что угодно, при условии, что функция будет возвращать false
мини примерчик не затруднит показать, по АПИ, так как запросов будет много.
Что-то никак в документации не разберусь, хоть бы там мини примеры кидали(
в php.ini укажите time_zone это проблема не с джумлой а с настройкой хостинга.