print после return — бесполезен. Как и все остальное. return возвращает результат и дальше код не выполняется.
да я именно его в консоль вставляю, print($output); не помогает… пока вот так выкрутился чтоб посмотреть как выборку делает
$q->prepare(); $q->stmt->execute(); $result = $q->stmt->fetchAll(PDO::FETCH_ASSOC); print_r($result);
знаний ноль...)
Алишер, здесь сложно что-то подсказать. Такие вопросы всегда в ступор вгоняют. Что мешает тебе скопировать из их примера HTML код и вставить на своей странице? И дальше немного доработать это.
Вы в консоль вставляете именно этот код, или выполняете $modx->runSnippet()? В любом случае, у вас сниппет не делает сам конечный вывод, он возвращает результат.
return $output;
То есть надо не забыть print результата сделать. Если не хватает знаний основ php, то обязательно надо взяться за изучение. Элементарные вещи знать обязательно надо.
Это очень сложная процедура, и боле менее гарантирована на modxcloud
Еще раз… Это потому что вы не научились там работать. Экономия получается огроменная. По сути я могу сказать, что переведя сайт с другого хостинга на modxcloud.com, я экономлю больше, чем плачу за этот хостинг. Вы вот оцениваете вообще свой час работы? То, что на modxcloud.com делается в два клика, запросто может занять и час, и два, и больше. Вы пробовали обновить версию MODX-а на сайте? Хоть раз? Сколько это заняло времени? С учетом снять бекап, скачать дистрибутив, распаковать, обновиться (дай Бог без проблем) и т.п., это никак не менее часа. Там это делается в два клика. Я за этот месяц обновил более десяти сайтов. Считайте, что сэкономил минимум 10 часов, то есть не менее $300.
можно еще md5 хэш пароля закинуть в базу и изменить тип проверки, хотелось, просто по-меньше движений
Это слишком много движений.
Хочу показать небольшой пример, который может пригодиться. Вот встала задача — выполнить какие-то действия с документами, которые являются разделами для различных товаров на сайте (массово шаблон обновить и т.п.). Но разделы и товары разбросаны по всему сайту, и логики особой нет. А вручную делать это лень.
Что мы можем сделать в данной ситуации? На мой взгляд самое простое — просто сделать выборку всех родительских документов, которые есть к товаров. Но как это сделать, если товары разбросаны по всему сайту? В shopModx все товары имеют данные в связанной таблице, и класс этих данных называется ShopmodxProduct. Соответственно, если мы этот класс жестко включим в условия поиска, то мы обязательно получим именно документы товаров. А далее нам остается только добавить в запрос родительские документы для этих товаров.
<?php $c = $modx->newQuery('modResource'); $c->innerJoin('modResource', 'Children'); $c->innerJoin('ShopmodxProduct', 'Product', 'Children.id=Product.resource_id'); $docs = $modx->getCollection('modResource', $c); foreach($docs as $doc){ // Здесь мы можем делать что хотим с документами разделов print "<br />".$doc->id.") ". $doc->pagetitle; }
Конечно это не самый оптимальный запрос, так как количество записей будет гораздо больше, чем кол-во разделов, но все равно xPDO нам вернет только объекты разделов. Конечно памяти скушает больше чем надо, но если товаров меньше 1000, то не страшно. Тем более что это разовая операция.
То, что для Modxcloud они фишки свои делают хорошо. Только ценник у них явно завышен, $24 за 2 сайта это перебор.
Похоже проблема в настройках хостинга. На разных серверах ведёт себя по-разному.