Вэб-разработка
Учим PHP

Dedof (off) [899]
13 февраля 2009, 10:23

Пытался сделать постраничную навигацию получается примерно так
{ $res = "SELECT COUNT($comment_pic_id) as total FROM " . phpbb_album_comment;

if ( !($result = $db->sql_query($res)))
{
message_die(GENERAL_ERROR, 'Could not query private message information', '', __LINE__, __FILE__, $res);
}
$count = $db->sql_fetchrow($result);
if ($count['total'] > $board_config['posts_per_page'])
{
$pagination = generate_pagination("fcomentt.$phpEx?", $count['total'], $board_config['posts_per_page'], $start);
}
$template->assign_vars(array( 'PAGINATION' => $pagination
));
}

но неработает,причина в том что в сол запросе после LIMIT " надо видимо писать . $start . ", " . $board_config['posts_per_page'];
но вобще неполучается ето туда поставить,подскажите пожалуйста что я не так делаю
-------
Profi Administrator [10176]
14 февраля 2009, 11:53

Dedof, так покажи запрос. Может у тебя там синтаксическая ошибка?
Ссылки на страницы выводятся верно? Номер страницы методом GET в скрипт принимаешь? Типа
$start = intval($_GET['start']);
-------
Profi Administrator [10176]
14 февраля 2009, 11:56

И вот эта строчка у тебя странная
$pagination = generate_pagination("fcomentt.$phpEx?", $count['total'], $board_config['posts_per_page'], $start);
Судя по всему ты про $comment_pic_id забыл
-------
Dedof (off) [899]
14 февраля 2009, 13:15

вот преведу всё целиком:


<?php
define('IN_PHPBB', true);

$phpbb_root_path = './'; // <--
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);
include($phpbb_root_path . 'includes/functions_validate.'.$phpEx);
include($phpbb_root_path . 'includes/bbcode.'.$phpEx);
$start = ( isset($HTTP_GET_VARS['start']) ) ? intval($HTTP_GET_VARS['start']) : 0;
$inline_columns = 4;
$inline_rows = 5;
$window_columns = 8;

$userdata = session_pagestart($user_ip, $page_id);
init_userprefs($userdata);
$page_title = 'Последние комментарии к фото';
include($phpbb_root_path . 'config.'.$phpEx);
$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);
include($phpbb_root_path . 'includes/page_header.'.$phpEx);

$template->set_filenames(array(
'body' => 'fcomment.tpl'));

$mysql_host = "localhost";
$mysql_user = " ";
$mysql_password = " ";
$mysql_bd = " ";

$link = mysql_connect($mysql_host, $mysql_user, $mysql_password);
mysql_select_db($mysql_bd);




$sql=mysql_query("SELECT t.*, a.* FROM phpbb_album_comment t, phpbb_album a WHERE t.comment_pic_id = a.pic_id ORDER BY comment_id DESC LIMIT 50");
while($row=mysql_fetch_array($sql))

// вот видимо здесь вместо DESC LIMIT 50 должно быть . $start . ", " . $board_config['posts_per_page']; но с ним вообще не ...
Читать далее
-------
Dedof (off) [899]
14 февраля 2009, 13:16

и далее:

$template->assign_vars(array(
'PIC_TITLE' => $pic_title,
'COMMENT_PIC_ID' => $comment_pic_id,
'COMMENT_TEXT' => $comment_text,
'COMMENT_USERNAME' => $comment_username,
'TIME' => $comment_time,
'PIC_ID' => $pic_id,
'PAGINATION' => $pagination
));
}

$template->pparse('body');
mysql_close($link);

include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
?>


в адресной строке браузера при запуске скрипта видна постраничная навигация вида http://test1.ru/fcomentt.php?&start=10
ну и так далее,но выводится всего одно сообщение,причем при переходе по страницам оно не меняется а переход судя по адресной строке происходит :(
-------
Profi Administrator [10176]
14 февраля 2009, 20:16

Dedof, я не понял, ты выводишь все комментарии или комментарии к конкретному файлу? Чего то у тебя запросы между собой не стыкуются.
-------
Dedof (off) [899]
14 февраля 2009, 21:58

Все комментарии
-------
Dedof (off) [899]
14 февраля 2009, 22:55

вот же во втором запросе считаем общее количество комментариев $sql = "SELECT COUNT($comment_pic_id) as total FROM " . phpbb_album_comment;
-------
Profi Administrator [10176]
17 февраля 2009, 02:02

Dedof, очевидно не COUNT($comment_pic_id), а COUNT(comment_pic_id). Если конечно у тебя есть уникальная ячейка comment_pic_id в таблице комментариев.
-------
Dedof (off) [899]
17 февраля 2009, 05:38

да переделал,заработала навигация-но почему то выводится только одно сообщение на страницу, видимо где то в $template->set_filenames(array что то не так делаю
-------

Ответить на тему

стр. Пред. 1,2,3 ... 27,28,29 ... 87,88,89 След.

стр.  

Вэб-разработка
Список форумов
На главную

Последние темы

Регистрация
Вход

0.028 сек
SQL: 4