Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Постраничный вывод, [запутался] 
V
    Опции темы
gta4kv
Дата 21.12.2007, 15:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Walking around mad.
***


Профиль
Группа: Завсегдатай
Сообщений: 1868
Регистрация: 25.7.2006

Репутация: 21
Всего: 91



Привет всем!

делаю постраничный вывод.. Запутался..

Есть некое поле book_content(longtext) в таблице books.

Юзер обращаясь к сайту http://site.ru/bookread/idКниги/idСтранцы 
должен получать контент, - три тысячи символов как раз из поля.

Код

    if( $page_id > 1 ) $to_echo = ( $page_id ) * 3000 - 3000; else $to_echo = 0;
                                    $to_echo2 = $to_echo + 3000;
                                    $result['book_content'] = preg_replace('/\n/', '<br>', $result['book_content'] );
                                    return substr( $result['book_content'] , $to_echo, $to_echo2 );
                                    


Т.е мне на каждой странице надо выводить по три тысячи символов из переменной $result['book_content'].

Первая и вторая страница - нормально. На третей уже не так.. от прошлой страницы выводиться три тыщи символов + 6тыщ новых.
Мне же надо, на первой 0-3000, на второй 3000-6000 итд..
Что не так? Дайте хоть наводку.. ни как не могу догнать..

upd.

Если писать:
Код

                           echo substr( $result['book_content'], 0, 3000 ); 
                                    echo '<br /> <br />';
                                    echo substr( $result['book_content'], 3000, 6000 );
                                    echo '<br /> <br />';
                                    echo substr( $result['book_content'], 6000, 9000 );


Тоже повторяются 3 тыщи символов на третей странице :-(

Это сообщение отредактировал(а) gta4kv - 21.12.2007, 16:10
PM MAIL   Вверх
krundetz
Дата 21.12.2007, 16:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вечный странник
***


Профиль
Группа: Завсегдатай
Сообщений: 1400
Регистрация: 14.6.2007
Где: НН(Сормово)

Репутация: 20
Всего: 69



ошибка в этой строке.
Код

$to_echo2 = $to_echo + 3000;

необходимо указывать количество выводимых символов
тоесть в вашем случае:
Код

$to_echo2 = 3000;

Я думаю ваша ошибка в том что вы даете непонятные названия переменным, я бы переписал ваш код так:
Код

$echo_length = 3000;
if( $page_id > 1 ) 
$echo_start = ( $page_id ) * 3000 - 3000;
else 
$echo_start = 0;
$result['book_content'] = preg_replace('/\n/', '<br>', $result['book_content'] );
return substr( $result['book_content'] , $echo_start, $echo_length );



--------------------
!цензоры - Хранитель стратегической жидкости
Группа ТГВ
Группа Нижний Новгород
user posted image
PM MAIL   Вверх
gta4kv
Дата 21.12.2007, 16:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Walking around mad.
***


Профиль
Группа: Завсегдатай
Сообщений: 1868
Регистрация: 25.7.2006

Репутация: 21
Всего: 91



krundetz, спасибо.. забыл совсем синтаксис функии :(
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0421 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.