ทำให้เลขลำดับเรียงใน pagination ของ codeigniter

ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา ทำให้เลขลำดับเรียงใน pagination ของ codeigniter

ทำให้เลขลำดับเรียงใน pagination ของ codeigniter
คือลองทำตามกระทู้ https://www.ninenik.com/content.php?arti_id=673 แล้ว แต่ว่าเลขมันไม่เรียงค่ะ
รบกวนช่วยหน่อยค่ะ 

public function main(){
		$this->load->library('pagination');
		$page = $this->uri->segment(3);
		
		$param = new stdClass();
		if (!isset($page) || $page == '') {
			$page = 1;
		}
		$param->per_page = 30;
		$param->limit = ($page - 1) * $param->per_page;
		
		$paginate_url = site_url('warehouse/main');
		$data['total_result'] = $this->m_stock->count_stock ();
		$config['uri_segment'] = 3;
		$config['num_links'] = 3;
		$config['base_url'] = $paginate_url;
		$config['total_rows'] = $data['total_result'];
		$config['per_page'] = $param->per_page;
		$config['use_page_numbers'] = TRUE;
		$config['page_query_string'] = TRUE;
		$this->pagination->initialize($config);
		$data['pagination']   = $this->pagination->create_links();
		
		$data['item'] = $this->m_stock->get_item_code($param);
		$this->load->view('v_all_stocks', $data);
	}
	
ส่วนอันนี้คือหน้า view ที่เรียกข้อมูลมาแสดงค่ะ 
<div style="width: 70%" align="right">
	<?php 
	       if(isset($pagination) && $pagination != ''){
	?>
	<div class="search_pagination"><?php echo $pagination; ?></div>
	 <?php }   ?>
</div>
?php 
	$i=1;
	foreach ($item as $item){
?>
	<tr>
		<td>
			<?php echo $i++; ?>
		</td>
	<td>
<?php } ?>



Baipor Sukkasemchai 23-09-2015 17:55:15

คำแนะนำ และการใช้งาน

สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก


  • ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ
  • เปลี่ยน


    ( หรือ เข้าใช้งานผ่าน Social Login )

 ความคิดเห็นที่ 1
ต้องให้หน้า view มีค่าตัวแปร ที่เก็บ หน้าปัจจุบัน 
 
แล้วก็กำหนดเลขเรียงในรูปแบบ
 
<?=(($id-1)*5)+$i_num?>
 
$id คือตัวแปร ที่ส่งเลขหน้าปัจจุบัน
5 คือ หน้านั้นแสดงกี่รายการต่อหน้า 
$i_num คือ ตัวแปรนับลำดับปกติ 


ninenik 23-09-2015
 ความคิดเห็นที่ 2
มันก็ยังไม่เป็นเลขต่อเนื่องให้อยู่ดีค่ะ หรือหนูทำผิด
ขึ้นต้นหน้า เพิ่มบรรทัดนี้เข้าไปค่ะ
<?php $page = $this->uri->segment(3);?>



<?php 
	$i=0;
	if(!isset($page)){
	  $page=1; 
	   if(count($item)>0){
		foreach ($item as $item){
		     $i++;
?>
		<tr>
			<td>
				<?php echo(($page-1)*30)+$i; ?>
		      </td>
               </tr>
<?php } } ?>

 



bpsweett 24-09-2015 08:36
 ความคิดเห็นที่ 3
โค้ดก็น่าจะถูกแล้ว ลองไล่ดูค่าที่ส่งมา บางทีค่าเพจ จะมีแบบไม่ตรงด้วย
ต้องกำหนดใน 

$config['use_page_numbers'] = TRUE;  




ninenik 24-09-2015
1






เว็บไซต์ของเราให้บริการเนื้อหาบทความสำหรับนักพัฒนา โดยพึ่งพารายได้เล็กน้อยจากการแสดงโฆษณา โปรดสนับสนุนเว็บไซต์ของเราด้วยการปิดการใช้งานตัวปิดกั้นโฆษณา (Disable Ads Blocker) ขอบคุณครับ