Помогите разобраться с постраничным выводом

akimov_aleks

Постоялец
Регистрация
15 Авг 2007
Сообщения
526
Реакции
104
сижу чтото голову ломаю не могу как понять это подправить...
PHP код
Код:
<?
if(!isset($_SESSION['loginned'])){
    $tpl->load_tpl('info.tpl');
    $tpl->tpl_set( '{error}', $dictionary['info'][3] );
    $tpl->tpl_set( '{info}', '' );
    $tpl->tpl_set( '{other}', '' );
}
else{
    $tpl->load_tpl('show_orders.tpl');
    $tpl->tpl_set( '{error}', '' );
    $tpl->tpl_set( '{info}', '' );
    //загружаем список статусов
    $status_arr = $main_config['statuses'];
    $status_list = create_dropdown($status_arr,'key');
    //загружаем список клиентов
    $result = $mysql->query( "SELECT * FROM " . PREF . "_clients");
    while ( $row = mysql_fetch_array ($result) ) {
        $client_arr[$row['id']] = $row['name'];
    }
    $client_list = create_dropdown($client_arr,'key');
    //загружаем список мастеров
    $result = $mysql->query( "SELECT * FROM " . PREF . "_users");
    while ( $row = mysql_fetch_array ($result) ) {
        $users_arr[$row['id']] = $row['name'];
    }
    $users_list = create_dropdown($users_arr,'key');
   
    $tpl->tpl_set( '{client_list}', $client_list );
    $tpl->tpl_set( '{status_list}', $status_list );
    $tpl->tpl_set( '{expert_list}', $users_list );
    $tpl->tpl_set( '{acceptor_list}', $users_list );

    //    выводим список заказов:
  // if ($_SESSION['usergroup'] == 7){
    $where = '';
  // }
  // else
  //  $where = 'WHERE status IN (1,2,3)';
    $result = $mysql->query( "SELECT * FROM " . PREF . "_orders $where ORDER BY status, id DESC");
    if( preg_match('~\[orders\](.*?)\[\/orders\]~si',$tpl->template,$matches) ){
        $row_tpl = $matches[1];
    }
    if($result){
        while ( $row = mysql_fetch_array ($result) ) {
            $this_row_tpl = $row_tpl;
            $row['display_aebutton'] = 'none';
            $row['display_ardbutton'] = 'none';
            $row['display_artbutton'] = 'none';
            switch($row['status']){
                case 1: $row['display_aebutton'] = 'inline-block'; break;
                case 2: $row['display_ardbutton'] = 'inline-block'; break;
                case 3: $row['display_artbutton'] = 'inline-block'; break;
            }
            $row['status_color'] = $main_config['status_color'][$row['status']];
            $row['status_class'] = $main_config['status_class'][$row['status']];
            $row['status'] = $main_config['statuses'][$row['status']];
            $row['client'] = $client_arr[$row['client']];
            $row['expert'] = $users_arr[$row['expert']];
            $row['acceptor'] = $users_arr[$row['acceptor']];
           
            foreach($row as $key=>$value){
                $this_row_tpl = str_replace('{'.$key.'}',$value,$this_row_tpl);
            }
            $full_tpl .= $this_row_tpl;
        }
        $tpl->template = preg_replace('~\[orders\].*?\[\/orders\]~si',$full_tpl,$tpl->template);
        $full_tpl = '';
        $tpl->template = str_replace('[table]','',$tpl->template);
        $tpl->template = str_replace('[/table]','',$tpl->template);
    }else{
        $tpl->tpl_set( '{error}', $dictionary['info'][11] );
        $tpl->template = preg_replace('~\[table\].*?\[\/table\]~si','',$tpl->template);
    }
}//end ELSE
$tpl->tpl_save();
$tpl->tpl_complate( 'content' );
$page_title = $main_config['home_title'] . ' - ' . $dictionary['page'][8];
?>
TPL фаил
Код:
[table]
<table class="table table-striped table-hover">
    <thead>
        <tr class="warning">
            <th>ID</th>
            <th>Статус</th>
            <th>Клиент</th>
            <th>Заявка</th>
            <th>Дата приема</th>
            <th>Дата выполнения</th>
            <th>Кто принял</th>
            <th>Исполнитель</th>
            <th>Комментарий</th>
            <th>Сумма</th>
            <th></th>
        </tr>
    </thead>
    <tbody>
        [orders]
        <tr id="tr_{id}">
            <td>{id}</td>
            <td id="td_status_{id}"><span class="{status_class}">{status}</span></td>
            <td id="td_client_{id}">
                <div>{client}</td>
            <td id="td_order_{id}">
                <div>{order_descr}</div>
            </td>
            <td>
                <div>{add_date}</div>
            </td>
            <td id="td_returndate_{id}">
                <div>{return_date}</div>
            </td>
            <td id="td_acceptor_{id}"><div>{acceptor}</div></td>
            <td id="td_expert_{id}"><div>{expert}</div></td>
            <td id="td_comment_{id}"><div>{comment}</div></td>
            <td id="td_amount_{id}">{amount}</td>
            <td>
                <nav class="w60">
                    <a onClick="load_form('edit_order','{id}');" title="изменить параметры заявки">
                        <span class="glyphicon glyphicon-pencil"></span>
                    </a>
                    <a onClick="load_form('delete_order','{id}'); " title="удалить заявку">
                        <span class="glyphicon glyphicon-remove"></span>
                    </a>
                    <a id="ae_button_{id}" onClick="load_form('add_expert','{id}', 2);" title="взять в работу" style="display:{display_aebutton};">
                        <span class="glyphicon glyphicon-time"></span>
                    </a>
                    <a id="ard_button_{id}" onClick="load_form('add_expert','{id}', 3);" title="заявка готова" style="display:{display_ardbutton};">
                        <span class="glyphicon glyphicon-ok"></span>
                    </a>
                </nav>
            </td>
        </tr>
        [/orders]
    </tbody>
    <tfoot>
        <tr class="warning">
            <th>ID</th>
            <th>Статус</th>
            <th>Клиент</th>
            <th>Заявка</th>
            <th>Дата приема</th>
            <th>Дата выполнения</th>
            <th>Кто принял</th>
            <th>Исполнитель</th>
            <th>Комментарий</th>
            <th>Сумма</th>
            <th></th>
        </tr>
    </tfoot>
</table>

<div id="MyHint"></div>
[/table]
functions.php
Код:
<?
function pagination($num_pages,$current_page,$near_pages,$url,$type=0){
  $min_page = $current_page - $near_pages;            //определяем минимальную страницу
  $max_page = $current_page + $near_pages;            //определяем максимальную страницу
  if($min_page < $near_pages){$min_page = 1;}         //ограничиваем минимальную страницу
  if($max_page > $num_pages){$max_page = $num_pages;} //ограничиваем максимальную страницу
  switch($type){
  case 1: $urlpart = '&page='; break;
  default: $urlpart = '/page/'; break;
  }
  for($i=$min_page; $i<($max_page+1); $i++){          //формируем центральные ссылки на страницы
    $href = '/'.$url.$urlpart.$i;
    $pages .="| <a href='$href'>$i</a> |";
  }
  //"обвешиваем" справа и слева
  if($current_page > ($near_pages+2) ) {$pages = '|...|'.$pages;}
  if($current_page > ($near_pages+1) ) {$pages = '| <a href=\'/' .$url.$urlpart. '/1\'>1</a> |' . $pages;}
  if($current_page < ($num_pages - $near_pages -1)){$pages .= '|...|';}
  if($current_page <  $num_pages - $near_pages){$pages .= '| <a href=\'/' .$url.$urlpart.$num_pages. '\'>'.$num_pages.'</a> |';}
  $pages = str_replace('||','|',$pages);      //убираем лишние символы
  return $pages;
}
........
 
Назад
Сверху