Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Почему не сортирует. imap_sort
 
 автор: brys   (02.05.2007 в 22:35)   письмо автору
 
 

Trianon ты мне помог в одной из тем сделать по страничную навигацию. я добавил функцию imap_sort для сортировки по дате и она сортирует, но когда переходишь на новую страницу (из 1-20 в 20-40) все остается на уровне 1-20 (хотя ссылки генирятся правильно). Помоги завершить.


echo "Писем: $anum";

$anum = imap_num_msg($mbox);
$from = isset($_GET['f'])? intval($_GET['f']): 1;
$num = isset($_GET['n'])? intval($_GET['n']): 20;

$sort = imap_sort($mbox,SORTDATE,1,SE_UID);

for($i=0; $i < $num && $i+$from <= $anum; $i++ )
{
 
$obj = imap_headerinfo($mbox, imap_msgno($mbox,$sort[$i]), $i+$from);
$arr = isset($obj->Subject)? imap_mime_header_decode($obj->Subject) : '';
$fromname = imap_mime_header_decode($obj->fromaddress);


$msg_date = gmstrftime("%d %m %Y", strtotime($obj->Date));
$froms = $obj->from;
echo ("<tr>");
echo ("<td> ".($i+$from)." </td>");
echo ("<td>".$obj->Unseen."&nbsp;</td>");
echo ("<td><b> ". @convert_cyr_string($fromname[0]->text,$fromname[0]->charset,"w")."</b>&nbsp;&nbsp; ".$froms[0]->mailbox."@".$froms[0]->host."</td>");
echo ("<td><a href=\"messages.php?id=".($i+$from)."\">". ($arr === ''? '' : convert_cyr_string($arr[0]->text,$arr[0]->charset,"w"))."</a></td>");
echo ("<td>".$msg_date."</td>");
echo ("<td>".round(($obj->Size/1000),1)."КБ</td>");
echo ("</tr>\r\n");
}

echo ("</table>\r\n");
for($i = 0; $i < $anum; $i+=$num)
echo "<a href=?f=".($i+1)."&n=$num>".($i+1)."..".min($anum,$i+$num)."</a>\r\n";

   
 
 автор: brys   (03.05.2007 в 02:34)   письмо автору
 
   для: brys   (02.05.2007 в 22:35)
 

еще заметил что переход на другую страницу работает в зависимости от того какое значение стоит.

imap_headerinfo($mbox, imap_msgno($mbox, $sort[$i+$num(если от 20 до 40) $i+$from] (если от 1 до 20) ));

   
 
 автор: brys   (03.05.2007 в 15:10)   письмо автору
 
   для: brys   (03.05.2007 в 02:34)
 

Помогите кто может. очень надо. за помощь переведу 150 р по yandex-деньги или на мобильник скину.
:)

   
 
 автор: cheops   (04.05.2007 в 14:20)   письмо автору
 
   для: brys   (02.05.2007 в 22:35)
 

>$i < $num && $i+$from <= $anum
А зачем такое сложное условие в цикле? Разве первого не достаточно?

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования