01 августа 2022, 12:11 Да, задача вывести этим сниппетом только курсы доллара по дням. Поэтому использовал второй вариант без функции. Но не могу понять, почему-то [[+date]] и [[+value]] возвращаются пустыми. Вопросы / Вывод данных из БД 20 0
01 августа 2022, 11:30 Павел, добрый день! Спасибо большое за подробный ответ. Без ; после: foreach($content_currency->Record as $currency) { $items .= $modx->getChunk($tpl, array( 'date' => $currency->attributes()->Date, 'value' => $currency->Value, ))на сайте выдает ошибку 500. Вставляю ; после двух скобок ));, ошибка пропадает. Но таблица отображается. Но уже с пустыми [[+date]] и [[+value]]. Скриншот: https://skr.sh/sFDGc49PTvC?a. P.S В сниппет я также добавил строку: $currency_code = 'R01235';Думал, что может из-за этого таблица пустая. Но, оказывается не из-за этого. Вопросы / Вывод данных из БД 20 0
31 июля 2022, 23:11 Павел, а как быть с выводом данных в таблицу? В обычном php файле, следующий код работает, но используя в сниппете выходит ошибка return;1. <?php function get_currency_td($currency_code = 'R01235') { $date_start = date('d/m/Y', strtotime('-30 days')); // Дата начала выборки $date = date('d/m/Y'); // Текущая дата (используется для кэша и для конца выборки) $cache_time_out = 86400; // Время жизни кэша в секундах $file_currency_cache = './currency.xml'; // Файл кэша if(!is_file($file_currency_cache) || filemtime($file_currency_cache) < (time() - $cache_time_out)) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, 'https://www.cbr.ru/scripts/XML_dynamic.asp?date_req1='.$date_start.'&date_req2='.$date.'&VAL_NM_RQ='.$currency_code); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_HEADER, 0); $out = curl_exec($ch); curl_close($ch); file_put_contents($file_currency_cache, $out); } $content_currency = simplexml_load_file($file_currency_cache); $content_currency_result = ''; // Переменная для объединения всех дней в одну группу foreach($content_currency->Record as $currency) { $content_currency_result .= '<tr><td>'.$currency->attributes()->Date.' </td><td> '.$currency->Value.'</td><td></td></tr>'; } return $content_currency_result; } ?> <div class="currency-exchange"> <div class="ce-title">Таблица изменений курса доллара США за 30 дней</div> <table class="table table-condensed ce-table"> <thead> <tr> <td>Дата</td> <td>Курс рублей за 1 usd</td> <td>Изменение</td> </tr> </thead> <tbody> <?php echo get_currency_td('R01235'); ?> </tbody> </table> </div>Оставив только php код в сниппете и переносив html код в шаблон, пробовал использовать setPlaceholders, но с таблицей не получается. Данные отображаются внутри одного <tr> <td></td> <td></td> <td></td> </tr>Вот скриншот: https://skr.sh/sFCZaUMux90?a А необходимо чтобы данные распределились в отдельные tr td. Предполагаю, что тут уже без чанка/ов не обойтись, верно? Если да, то как это реализовать? Заранее спасибо! Вопросы / Вывод данных из БД 20 0
31 июля 2022, 20:27 Павел, большое вам спасибо за помощь! Все отлично работает. Вопросы / Вывод данных из БД 20 0
31 июля 2022, 18:47 Что-то [[+value]] и [[+dates]] пустыми отображаются. Вопросы / Вывод данных из БД 20 0
31 июля 2022, 17:03 Добрый день, Павел. Большое спасибо за ответ! Дело в том, что эти данные я вывожу в графиках с помощью Apexcharts. Код был большим. Поэтому я сокращенно написал их. Вот как оно выглядит: <div id="chart" style="max-width: 760px; margin: 35px auto; opacity: 0.9;"> <div id="responsive-chart"></div> </div> <script src="https://cdn.jsdelivr.net/npm/apexcharts"></script> <script> var options = { chart: { width: "100%", height: 380, type: "area" }, plotOptions: { bar: { horizontal: true } }, dataLabels: { enabled: false }, fill: { type: 'gradient', gradient: { shadeIntensity: 1, inverseColors: false, opacityFrom: 0.5, opacityTo: 0, stops: [0, 90, 100] }, series: [ { name: "Курс", data: [<?php echo implode(', ', $currencyArr[1]); ?>] } ], xaxis: { categories: [<?php echo implode(', ', $currencyArr[0]); ?>] }, title: { text: 'Динамика курса доллара США', align: 'left' }, stroke: { curve: 'straight' }, legend: { position: "right", verticalAlign: "top", containerMargin: { left: 35, right: 60 } }, responsive: [ { breakpoint: 1000, options: { plotOptions: { bar: { horizontal: false } }, legend: { position: "bottom" } } } ] }; var chart = new ApexCharts( document.querySelector("#responsive-chart"), options ); chart.render(); </script>Данный html код я выводил вместе с php кодом внутри сниппета. Поэтому под графикой выводилась ошибка return; 1. Вопросы / Вывод данных из БД 20 0
31 июля 2022, 16:29 У меня тоже под результатом выходит текст return; 1 если в сниппете смешиваются html и php коды. Пытался разделить смешанный код на сниппет и чанк, но не получается. Павел, надеюсь, что вы и мне тоже поможете. Заранее спасибо! Вопросы / Вывод данных из БД 20 0
31 июля 2022, 14:30 Здравствуйте, Павел. Вы можете помочь разделить нижеследующий код на сниппет и чанк/и?: foreach($content_currency->Record as $currency) { $content_currency_result[0][] = '"'.(string)$currency->attributes()->Date.'"'; $content_currency_result[1][] = str_replace(',', '.', $currency->Value); } return $content_currency_result; }На сайте я вывожу их так: <?php echo implode(', ', $currencyArr[1]); ?> <?php echo implode(', ', $currencyArr[0]); ?> Вопросы / Вывод данных из БД 20 0
[videoGallery] Видео галерея YouTube, Vimeo Невозможно установить пакет с подписью: videogallery-1.4.0-beta Ошибка установки Error в /core/packages/videogallery-1.4.0-beta/modCategory/7fc931a7772edc9752c16e9c41eb5e52.reso...
mxBoard: канбан-доска для команд, людей и ИИ-агентов в MODX 3 Привет, добавил пользователя в группу mxBoard(4), создал токен. Добавляю все в postman пишет: rest: { «success»: false, «message»: «Недействительный токен.», «data...
Релиз miniShop2 ver. 4.4.1 & 4.4.2 Подскажите пожалуйста, может я что-то не знаю или упустил. Но есть ли решение по глюку с radio? Указываешь свое radio c одинаковым name и в результате при переключении получаешь вс...
Плагин EnvBadge: визуальный индикатор окружения в админке MODX3 Расскажите пожалуйста как вы настраиваете сайт на MODX 3 чтобы был dev, prod, stage. Можете описать workflow? Допустим у меня 80% — это магазины, там клиенты, продажи, все онлай...
MaxNotify Обновление компонента 1.3.0-pl (22.07.2026) — добавлено автоматическое получение полей через msOrder->toArray(); — массивы и объекты безопасно пропускаются; — стандартные...
MyFavorites MyFavorites — 3.0.0-beta Первая версия для MODX Revolution 3.x — компонент полностью переписан с нуля (PHP >= 8.4, namespaced-ядро MODX 3, PSR-4, сервис-ориентированная архит...
Поэтому использовал второй вариант без функции.
Но не могу понять, почему-то [[+date]] и [[+value]] возвращаются пустыми.
Без ; после:
на сайте выдает ошибку 500.
Вставляю ; после двух скобок ));, ошибка пропадает.
Но таблица отображается. Но уже с пустыми [[+date]] и [[+value]]. Скриншот: https://skr.sh/sFDGc49PTvC?a.
P.S В сниппет я также добавил строку:
Думал, что может из-за этого таблица пустая. Но, оказывается не из-за этого.
Оставив только php код в сниппете и переносив html код в шаблон, пробовал использовать setPlaceholders, но с таблицей не получается. Данные отображаются внутри одного
Вот скриншот: https://skr.sh/sFCZaUMux90?a
А необходимо чтобы данные распределились в отдельные tr td.
Предполагаю, что тут уже без чанка/ов не обойтись, верно?
Если да, то как это реализовать? Заранее спасибо!
Дело в том, что эти данные я вывожу в графиках с помощью Apexcharts.
Код был большим. Поэтому я сокращенно написал их.
Вот как оно выглядит:
Данный html код я выводил вместе с php кодом внутри сниппета. Поэтому под графикой выводилась ошибка return; 1.
Пытался разделить смешанный код на сниппет и чанк, но не получается.
Павел, надеюсь, что вы и мне тоже поможете. Заранее спасибо!
Вы можете помочь разделить нижеследующий код на сниппет и чанк/и?:
На сайте я вывожу их так: