Ребят подскажите как прописать поля мультивыбор и список.
Как-то так
$fields['название_поля']['handler']->parse($res['название_поля']);
Огромное спасибо. Работает
echo "<td>{$fields['content']['handler']->parse($res['content'])}</td>";
Ребят подскажите как прописать поля мультивыбор и список.
Как-то так
$fields['название_поля']['handler']->parse($res['название_поля']);
Огромное спасибо. Работает
echo "<td>{$fields['content']['handler']->parse($res['content'])}</td>";
Ой что то не чего не получается.
<?php
$model = cmsCore::getModel('content');
$sql = «SELECT data2, title, gran, mine, content, part2, executor, tdby, kol, COUNT(*) count FROM cms_con_kipa GROUP BY title HAVING(title) >1 ORDER BY `cms_con_kipa`.`title` »;
$result = $model->db->query($sql);
foreach ($result as $res){
}
?>
<table style=«border-collapse:collapse;width:100%;»>
<tbody>
<tr>
<td>ДАТА</td>
<td>Серийный номер</td>
<td>ДУБЛЬ</td>
</tr>
<tr>
<td><?php echo $res['data2'];?></td>
<td><?php echo $res['title'];?></td>
<td><?php echo $res['count'];?></td>
</tr>
</tbody>
</table>
Нашел решения. Просто надо подумать было
<?php
echo '<table>';
foreach ($result as $res){
echo '<tr>';
echo "<td>{$res['data2']}</td>";
echo "<td>{$res['title']}</td>";
echo "<td>{$res['count']}</td>";
echo '</tr>';
} echo '</table>';
?>
Ну теперь буду думать как сохранять в XSL
Вот что у меня получилось
<?php
$model = cmsCore::getModel('content');
$sql = «SELECT data2, title, gran, mine, content, part2, executor, tdby, kol, COUNT(*) count FROM cms_con_kipa GROUP BY title HAVING(title) >1 ORDER BY `cms_con_kipa`.`title` »;
$result = $model->db->query($sql);
///echo $res['data2']; echo $res['title']; echo $res['count']."<br>";
?>
<?php if ($items){ ?>
<div class=«content_list table <?php echo $ctype['name']; ?>_list»>
<table>
<thead>
<tr><table id=«toExcel» class=«uitable»>
<button onclick=«exceller()»>Сохранить файл EXCEL</button>
<script>
function exceller() {
var uri = 'data:application/vnd.ms-excel;base64,',
template = '<html xmlns:o=«urn:schemas-microsoft-com:office:office» xmlns:x=«urn:schemas-microsoft-com:office:excel» xmlns=«www.w3.org/TR/TR/html40»><head><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>{worksheet}</x:Name><x:WorksheetOptions><x:DisplayGridlines/></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></xml><![endif]--></head><body><table>{table}</table></body></html>',
base64 = function(str) {
return window.btoa(unescape(encodeURIComponent(str)))
},
format = function(s, c) {
return s.replace(/{(\w+)}/g, function(m, p) {
return c[p];
})
}
var toExcel = document.getElementById(«toExcel»).innerHTML;
var ctx = {
worksheet: name || '',
table: toExcel
};
var link = document.createElement(«a»);
link.download = «export.xls»;
link.href = uri + base64(format(template, ctx))
link.click();
}
</script>
<tr height=«20» style=«height:15.0pt»>
<td colspan=«1» style=«border-width: 1px; border-style: solid; border-color: rgb(143, 139, 139);»><span style=«font-size: 8pt;»><span style=«font-weight: bold; font-size: 8pt;»>Дата</td>
<td colspan=«1» style=«border-width: 1px; border-style: solid; border-color: rgb(143, 139, 139);»<span style=«font-size: 8pt;»><span style=«font-weight: bold; font-size: 8pt;»><center>Серийный номер</center></td>
<td colspan=«1» style=«border-width: 1px; border-style: solid; border-color: rgb(143, 139, 139);»<span style=«font-size: 8pt;»><span style=«font-weight: bold; font-size: 8pt;»><center>ДУБЛЬ</center></td>
</tr>
<?php
foreach ($result as $res){
echo '<tr>';
echo "<td>{$res['data2']}</td>";
echo "<td>{$res['title']}</td>";
echo "<td>{$res['count']}</td>";
echo '</tr>';
} echo '<tr>';
?>
<?php if (isset($fields['photo']) && $fields['photo']['is_in_list']){ ?>
<th> </th>
<?php } ?>
<?php if ($ctype['is_rating']){ ?>
<th><?php echo LANG_RATING; ?></th>
<?php } ?>
<?php foreach($fields as $name => $field){ ?>
<?php if ($field['is_system'] || !$field['is_in_list']) { unset($fields[$name]); continue; } ?>
<?php if ($field['groups_read'] && !$user->isInGroups($field['groups_read'])) { unset($fields[$name]); continue; } ?>
<?php
if (!isset($field['options']['label_in_list'])) {
$label_pos = 'none';
} else {
$label_pos = $field['options']['label_in_list'];
}
?>
<?php } ?>
</tr>
</thead>
<tbody>
<?php foreach($items as $item){ ?>
<tr<?php if (!empty($item['is_vip'])){ ?> class=«is_vip»<?php } ?>>
<?php if (isset($fields['photo']) && $fields['photo']['is_in_list']){ ?>
<?php } ?>
<?php if (!empty($item['rating_widget'])){ ?>
<td class=«rating»>
<?php echo $item['rating_widget']; ?>
</td>
<?php } ?>
</tr>
<?php } ?>
</tbody>
<br>
</table>
</div>
<?php } else {
if(!empty($ctype['labels']['many'])){
echo sprintf(LANG_TARGET_LIST_EMPTY, $ctype['labels']['many']);
} else {
echo LANG_LIST_EMPTY;
}
}
Остается сделать заголовок как ссылка.
Ну вот казалась так все просто, но не тут было.
Как прописать что бы поле title была ссылкой?
foreach ($result as $res){
echo '<tr>';
echo "<td>{$res['data2']}</td>";
echo "<td>{$res['title']}</td>";
echo "<td>{$res['count']}</td>";
echo '</tr>';
} echo '<tr>';
?>
Поля ссылка вопрос решил: echo "<td><a href='kipa/". $res['slug']. ".html'>{$res['title']}</a></td>";
Ребят подскажите как прописать поля мультивыбор и список.
Я так понимаю мне надо что бы не прописывать подключение к базе данных надо отредоктировать файл
Нет, не надо редактировать файлы движка.
Ну все таки наверно как то не правильно делаю. Прописывать подключение к базе данных в каждом файле это так не должно быть.
Размещать логику и обработку данных из базы в файлах шаблона тоже неправильно, ну да ладно.
Попробуйте так:
<?php $model = cmsCore::getModel('content'); $sql = "SELECT data2, title, gran, mine, content, part2, executor, tdby, kol, COUNT(*) count FROM cms_con_kipa GROUP BY title HAVING(title) >1 ORDER BY `cms_con_kipa`.`title` "; $result = $model->db->query($sql); foreach ($result as $res){ echo $res['data2']; echo $res['title']; echo $res['count']."<br>"; } ?>
Спасибо. Сделал как вы написали. Работает))))
Дальше мне надо сделать табличный вариант.
<table style=«border-collapse:collapse;width:100%;»>
<tbody>
<tr>
<td>ДАТА</td>
<td>Серийный номер</td>
<td>ДУБЛЬ</td>
</tr>
<tr>
<td><?php echo $res['data2'];?></td>
<td><?php echo $res['title'];?></td>
<td><?php echo $res['count'];?></td>
</tr>
</tbody>
</table>
Думал все легко, но не тут то было.
<?php
$model = cmsCore::getModel('content');
$sql = «SELECT data2, title, gran, mine, content, part2, executor, tdby, kol, COUNT(*) count FROM cms_con_kipa GROUP BY title HAVING(title) >1 ORDER BY `cms_con_kipa`.`title` »;
$result = $model->db->query($sql);
foreach ($result as $res){
<table style=«border-collapse:collapse;width:100%;»>
<tbody>
<tr>
<td>ДАТА</td>
<td>Серийный номер</td>
<td>ДУБЛЬ</td>
</tr>
<tr>
<td><?php echo $res['data2'];?></td>
<td><?php echo $res['title'];?></td>
<td><?php echo $res['count'];?></td>
</tr>
</tbody>
</table>
}
?>
Подскажите как сделать табличный вариант. Куда бы я не поставил это(<) знак ошибка.
Если таблицу прописываю после закрытие } ?> То таблица отображается но данные появляются только в первой строке.
А можно по точней.?
Это от вас ждут «поточнее» — «где, чего и сколько?» Чего — понятно, осталось с остальным разобраться.
Наверное я не правильно довожу что мне нужно сделать.
Попробую объяснить.
Мне нужно на сайте сделать что бы автоматически показывал сколько раз повторяется заголовок в колонке.
Итог должен быть такой.
Что я для для этого делаю.
Первое захожу в базу
Запрос SQL
Прописываю
select title, count(*) as dubl from cms_con_kipa group by title having title > 1
Итог: все отлично.
Дальше
Создаю файл: default_list_table_dybl.tpl.php
<?php
$servername = «localhost»;
$username = «makson0x_jjjjjk»;
$password = «347582»;
$dbname = «makson0x_jjjjjk»;
$conn = new mysqli($servername, $username, $password, $dbname);
$sql = «SELECT data2, title, gran, mine, content, part2, executor, tdby, kol, COUNT(*) FROM cms_con_kipa GROUP BY title HAVING(title) >1 ORDER BY `cms_con_kipa`.`title` ASC»;
$result = $conn->query($sql);
if ($result->num_rows > 10) {
while ($row = $result->fetch_assoc()) {
echo $row[«data2»]; echo $row[«title»]; echo $row[«COUNT(*)»]."<br>";
}
}
$conn->close();
?>
Закидываю его в папку content
И вот итог:
Ну все таки наверно как то не правильно делаю. Прописывать подключение к базе данных в каждом файле это так не должно быть.
Я так понимаю мне надо что бы не прописывать подключение к базе данных надо отредоктировать файл /system/controllers/content/model.php
Где прописать instantcms
Да, хоть где. Можно между тегами <?php и ?> с двумя косыми и пробелом, так например // instantcms или рядом с монитором на листочке бумаги.
А вообще, вопрос звучит интересно. Вариантов ответов можно напридумать массу.
А можно по точней.?
Вот берем Тип контента localhost/kihf
Поля стандартные.
<?php $sql = «SELECT data2, title, gran, mine, content, part2, executor, tdby, kol, count(*) as dubl from cms_con_kipa group by title having title > 1»;?> и где прописать в стиле?
Надо прописать так что вид страницы моего сайта не изменился а просто добавился запрос к базе. Я понимаю что мне только останется прописать поле $row[«COUNT(*)»]
Добрый день.
Нужно сделать вывод количество дублирующихся заголовков.
В базе без проблем прописал проверил все работает. Результат устроил!!!!
Таблица: cms_con_kipa
Поле сравнения: title
Вывод: DUBL
select title, count(*) as dubl from cms_con_kipa group by title having title > 1
Как в обычный создать index.php знаю, все работает.
<?php
$servername = «localhost»;
$username = "*********";
$password = "**********";
$dbname = "**************";
$conn = new mysqli($servername, $username, $password, $dbname);
$sql = «SELECT data2, title, gran, mine, content, part2, executor, tdby, kol, count(*) as dubl from cms_con_kipa group by title having title > 1»;
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while ($row = $result->fetch_assoc()) {
echo $row[«data2»]. $row[«title»]. $row[«gran»]. $row[«mine»]. $row[«content»]. $row[«part2»]. $row[«executor»]. $row[«COUNT(*)»]."<br>";
}
}
$conn->close();
?>
А вот теперь вопрос. Где прописать instantcms голову сломал не получается. За ранние спасибо.
Установил виджет.
Вставляю на страницу виджет "php код". В него вставляю из буфера код sape.
Добавляю для вывода ссылок:. Но на сайте тогда выдается "return_links($2); ?>".
На странице добавления сайта в sape выдается, что на сайте кода sape нет.
Писал им в поддержку, ответили что нужно им отослать пароли что бы они сами подправили. Но это мне кажется очень странным.
Да это я понимаю. Вот и создал тему что один не справлюся.
Тут все несколько сложнее. Добавленные данные же еще надо хранить. И потом вывести в списке комментариев.
Т.е. только одной правкой шаблона тут не обойтись.