userAx писал(а):FROM ' . CHAT_TABLE . " as pm
as
там не должно бытьuserAx писал(а):FROM ' . CHAT_TABLE . " as pm
as
там не должно бытьmyArray
преобразовать в нижний регистр.Везде. Как оказалось это имеет значение.А какой в нем смысл в данном случае?userAx писал(а):Так алиас же? Привык ставить просто.
Преобразовал - теперь вообще ничего не выводится, даже пустая таблица.Sheer писал(а):А еще myArray преобразовать в нижний регистр.Везде. Как оказалось это имеет значение.
Код: Выделить всё
while ($row = $db->sql_fetchrow($result))
{
$template->assign_block_vars('myarray',array(
'AUTHORID' => $row['user_id'],
'TEXT' => $row['message'],
//'TOADDRESS' => $row['to_address']
));
}
Код: Выделить всё
<table width="100%" cellspacing="1" border="1">
<th>Author</th>
<th>Message</th>
<!-- BEGIN myarray -->
<tr>
<td>{myarray.AUTHORID}</td>
<td>{myarray.TEXT}</td>
</tr>
<!-- END myarray -->
</table>
Код: Выделить всё
<?php
define('IN_PHPBB', true);
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);
// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup();
if ($user->data['user_id'] == ANONYMOUS)
{
login_box('', $user->lang['LOGIN']);
}
$sql = 'SELECT *
FROM ' . POSTS_TABLE . '';
$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result))
{
$template->assign_block_vars('myarray',array(
'AUTHORID' => $row['post_id'],
'TEXT' => $row['post_text'],
//'TOADDRESS' => $row['to_address']
));
}
$db->sql_freeresult($result);
page_header('PM Admin');
$template->set_filenames(array(
'body' => 'ttt.html',
));
page_footer();
?>
Код: Выделить всё
<!-- INCLUDE overall_header.html -->
<!-- IF S_FORUM_RULES -->
<div class="forumrules">
<!-- IF U_FORUM_RULES -->
<h3>{L_FORUM_RULES}</h3><br />
<a href="{U_FORUM_RULES}"><b>{L_FORUM_RULES_LINK}</b></a>
<!-- ELSE -->
<h3>{L_FORUM_RULES}</h3><br />
{FORUM_RULES}
<!-- ENDIF -->
</div>
<br clear="all" />
<!-- ENDIF -->
<table width="100%" cellspacing="1" border="1">
<tr>
<th>Author</th>
<th>Message</th>
</tr>
<!-- BEGIN myarray -->
<tr>
<td>{myarray.AUTHORID}</td>
<td>{myarray.TEXT}</td>
</tr>
<!-- END myarray -->
</table>
<!-- INCLUDE jumpbox.html -->
<!-- INCLUDE overall_footer.html -->
Какого пользователя и куда вывести?userAx писал(а):Хочу вывести кол-во сообщений пользователя из опеределённого форума на страницу viewtopic_body
Каждого пользователя. Есть страница с темой на форуме и есть вывод кол-ва сообщений.Sheer писал(а):Какого пользователя и куда вывести?
Я хочу сделать чтобы выводилось кол-во сообщений конкретно в данном форуме, то есть такВсего сообщений: 1234
Добавлено спустя 8 минут 20 секунд:Всего сообщений: 1234 \ 456(при наведении tooltip "На этом форуме")
На таком примере не работает, потому что во viewtopic уже уходит массив $postrowSheer писал(а):На примере posts
Код: Выделить всё
while ($res = $db->sql_fetchrow($sql_res))
{
$template->assign_block_vars('postrow',array(
'U_COUNT_FORUM_TOPICS' =>$res['user_count_posts']
));
}
userAx писал(а):А какие именно ошибки?
Код: Выделить всё
<!-- BEGIN myArray -->
<table width="100%" cellspacing="1" border="1">
<th>Author</th>
<th>Message</th>
<th></th>
<tr>
<td>{AUTHORID}</td>
<td>{TEXT}</td>
</tr>
</table>
<!-- END myArray -->
Код: Выделить всё
<th>Author</th>
<th>Message</th>
<th></th>
<tr>..</tr>
В минипрофиле что ли, или количество сообщений того пользователя, который просматривает топик.userAx писал(а):Я хочу сделать чтобы выводилось кол-во сообщений конкретно в данном форуме, то есть так
Sheer писал(а):Сама таблица формируется в теле цикла. То есть если будет 100 итераций, значит 100 таблиц
Совершенно верно, в минипрофиле слева. Да, для каждого пользователя выводить его кол-во сообщений в данном форуме.Sheer писал(а):В минипрофиле что ли, или количество сообщений того пользователя, который просматривает топик.
При чем тутuserAx писал(а):потому что во viewtopic уже уходит массив $postrow
$postrow
, Я просто показал пример на извлечении информации из таблицы posts
Код: Выделить всё
$query = 'SELECT COUNT(*) as user_count_posts , u.username, u.user_id
FROM ' . POSTS_TABLE . ' AS p
LEFT JOIN ' . FORUMS_TABLE . ' AS f ON p.forum_id = f.forum_id
LEFT JOIN ' . USERS_TABLE . ' AS u ON p.poster_id = u.user_id
WHERE p.post_approved = 1
AND f.forum_id = 36
GROUP BY u.user_id';
$sql_res = $db->sql_query($query);
while ($res = $db->sql_fetchrow($sql_res))
{
$postrow = array_merge($postrow,array(
'U_COUNT_FORUM_TOPICS' =>$user_total_posts['user_count_posts']
));
}
Не обязательно, кстати. Алиас можно писать и сТатьяна5 писал(а):userAx писал(а):FROM ' . CHAT_TABLE . " as pm
as
там не должно быть
as
. В MySQL, по крайней мере. В некоторых базах as
обязателен.Код: Выделить всё
$sql = 'SELECT COUNT(post_id) AS user_count_posts
FROM ' . POSTS_TABLE . '
WHERE post_approved = 1
AND forum_id = ' . $forum_id . '
AND poster_id = '. $topic_data['topic_poster'] .'';
$res = $db->sql_query($sql);
$row = $db->sql_fetchrow($res);
$user_count_posts = $row['user_count_posts'];
Код: Выделить всё
[phpBB Debug] PHP Notice: in file [ROOT]/bestsearch.php on line 17: Use of undefined constant PLACE_YOUR_ARRAY_HERE - assumed 'PLACE_YOUR_ARRAY_HERE'
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4941: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3924)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4943: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3924)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4944: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3924)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4945: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3924)