Вывод результатов в чанке

Написал небольшой сниппет

$result = $modx->query("SELECT * FROM $tableName ORDER BY id DESC LIMIT 27");
$data = $result->fetchAll(PDO::FETCH_ASSOC);
foreach ($data as $data){
        $RegDate = $data['Date'];
	$Name = $data['Name'];
	$LastName = $data['LastName'];
	$DepName = $data['DepName'];
}
return $modx->getChunk('OverlapCounter', array('RegDate' => $RegDate,'Name' => $Name,'LastName' => $LastName,'DepName' => $DepName));
Как видно из кода — выборка на 27 строк.

Однако в чанке выводится только первая. Как вывести все строки в чанке?

Код чанка
<div class="row">
    <div class="col-md-3">[[+RegDate]]</div>
    <div class="col-md-3">[[+Name]]</div>
    <div class="col-md-3">[[+LastName]]</div>
    <div class="col-md-3">[[+DepName]]</div>
</div>
Дмитрий
05 октября 2021, 23:25
modx.pro
371
0

Комментарии: 2

Дмитрий
06 октября 2021, 00:19
-1
Решил в итоге сам)
Не знаю правильно или нет, но заработал такой вариант
$result = $modx->query("SELECT * FROM $tableName ORDER BY id DESC LIMIT 27");
$data = $result->fetchAll(PDO::FETCH_ASSOC);
foreach ($data as $list){
        $RegDate = $list['Date'];
	$Name = $list['Name'];
	$LastName = $list['LastName'];
	$DepName = $list['DepName'];
        echo '<div class="row">';
	echo '<div class="col-md-3">' .$RegDate. '</div>';
	echo '<div class="col-md-3">' .$Name. '</div>';
	echo '<div class="col-md-3">' .$LastName. '</div>';
	echo '<div class="col-md-3">' .$DepName. '</div>';
	echo '</div>';
}
return $modx->getChunk('OverlapCounter', array('list => $list'));
Соответственно код чанка
<div>[[+list]]</div>
может кому пригодится
    Александр Туниеков
    06 октября 2021, 00:42
    +1
    Мнда… Чудесный код :-). echo и getChunk. getChunk вообще ничего не делает. все через echo идет.
    Попробуй лучше так:
    Чанк
    <div class="row">
        <div class="col-md-3">[[+Date]]</div>
        <div class="col-md-3">[[+Name]]</div>
        <div class="col-md-3">[[+LastName]]</div>
        <div class="col-md-3">[[+DepName]]</div>
    </div>
    сниппет
    $result = $modx->query("SELECT * FROM $tableName ORDER BY id DESC LIMIT 27");
    $data = $result->fetchAll(PDO::FETCH_ASSOC);
    $out = '';
    foreach ($data as $list){
            $out .= $modx->getChunk('OverlapCounter', $list);
    }
    return $out;
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    2