|
|
|
อยากให้ลำดับ เลขหน้า เมื่อทำการแบ่งหน้า ให้มีความถูกต้องครับ ใช้ kgPager Class ในการแบ่งหน้า |
|
|
|
|
|
|
|
ผมทำการแบ่งหน้า แต่ละหน้าไว้ 10 เรื่อง โดยในแต่ละหน้า ผมต้องการสร้างหมายเลขลำดับเช่น หน้าแรก 1-10 ของ เพจที่ 1
ต่อไป 11-20 ในเพจที่ 2 21-30 แบบนี้ไปเรื่อยๆอ่ะครับ
ใช้ kgPager Class ครับตอนนี้อยากแบ่งหน้าตามที่กล่าวข้างต้นครับ
Code ส่วนที่แสดงหน้าครับ (PHP)
<table width="100%" border="0">
<tr class="aqua_treatment_text_header">
<td width="2%">ลำดับ</td>
<td width="20%">ข้อหา</td>
<td width="15%">มาตรา</td>
<td width="20%">ค่าปรับ (บาท)</td>
<td width="20%">วันที่แจ้งปรับ</td>
<td width="15%">การจ่ายเงิน</td>
<td width="20%">เพิ่มเติม</td>
</tr>
<tr>
<fieldset class="field_std3" >
<legend>ค้นหากระทำความผิด</legend>
<label for="fault_key"></label>
<select name="tbSelect" id="tbSelect">
<option value="fault_name" selected <?php if(@addslashes($_GET["tbSelect"]) == "fault_name") {echo 'selected';}?>> กระทำความผิด(ข้อหา)</option>
<option value="fault_name_description" <?php if(@addslashes($_GET["tbSelect"]) == "fault_name_description") {echo 'selected';}?>>มาตรา</option>
<option value= "fault_regis_date" <?php if(@addslashes($_GET["tbSelect"]) == "fault_regis_date") {echo 'selected';}?>>วันที่แจ้งปรับ</option>
</select>
<input name="txtKey" type="text" autofocus class="aqua_textfield12" id="txtKey" placeholder="พิมพ์เพื่อค้นหากระทำความผิด แล้วกด Enter" style="" autocomplete="off" value="<?php echo @addslashes($_GET['txtKey']);?>">
<button type="submit" class="button green" >ค้นหา</button><br>
เลือกวันที่ : <input type="text" name="start_Date" class="aqua_textfield" id="startDate" placeholder="วันที่เริ่ม" value="<?php echo @addslashes($_GET['start_Date']);?>">
ถึงวันที่ <input type="text" name="end_Date" class="aqua_textfield" id="endDate" placeholder="วันที่สิ้นสุด" value="<?php echo @addslashes($_GET['end_Date']);?>">
</fieldset></tr>
<?php
$startDate = isset($_GET['start_Date'])? $_GET['start_Date'] : '';
$endDate = isset($_GET['end_Date'])? $_GET['end_Date'] : '';
$page = empty($_GET['page']) ? 1 : $_GET['page'];
$search = ! empty($_GET['fault_code']) ? htmlspecialchars($_GET['fault_code']) : NULL;
// แสดงข้อมูลก่อนการค้นหา
$query = " SELECT * FROM fault,fault_register,member
WHERE member.member_key='".$member_detail->member_key."'
AND fault_register.member_key=member.member_key
AND fault_register.fault_key=fault.fault_key
AND fault_register.fault_regis_date
"; //คำสั่ง SQL
//หากมีการกำหนดวันที่
$query.= ( ($startDate != '') && ($endDate != '') ) ? " AND date(fault_regis_date) BETWEEN '$startDate 00:00:00' AND '$endDate 23:59:59' " : "";
//กำหนดเงื่อนไขในการค้นหา โดยให้เลือกฟิลด์ที่กำหนด
$query.= ( (addslashes($_GET["tbSelect"]) !="") && (addslashes($_GET["txtKey"]) !="") ) ? " AND (" . $_GET["tbSelect"] . " LIKE '%" . $_GET["txtKey"] . "%') " : "";
$objQuery = mysql_query($query) or die("ไม่สามารถค้นหาได้ [" . $query . ']<br>['.mysql_error().'] ');
//if(mysql_numrows($objQuery)<1){
//die('ไม่พบรายการค้นหา [' . $query . ']');}
$sql = mysql_query($query);
$total_records = mysql_num_rows($sql); //นับจำจำนวน record
$scroll_page = 5; //จำนวนแบ่งหน้าที่จะให้แสดง คือ <ก่อนหน้า , 1 , 2 , 3 , ต่อไป>
$per_page = 10;
$current_page = $page; //รับค่าเพจ
$pager_url = '?p=payaqua&member_code='.$_GET["member_code"].'&tbSelect='.$_GET["tbSelect"].'&txtKey='.$_GET["txtKey"].'&start_Date='.$_GET["start_Date"].'&end_Date='.$_GET["end_Date"].'&page='; //URL ตามตัวครับ
$inactive_page_tag = 'id="current_page"'; //ตำแหน่งหน้าปัจจุบัน
$previous_page_text = '< ย้อนกลับ'; //ปุ่มย้อนกลับ
$next_page_text = 'ถัดไป >'; //ปุ่มถัดไป
$first_page_text = '<< หน้าแรก'; //ปุ่มหน้าแรก
$last_page_text = 'หน้าสุดท้าย >>'; //ปุ่มหน้าสุดท้าย
$kgPagerOBJ = new kgPager(); #เรียกใช้งาน class
$kgPagerOBJ -> pager_set($pager_url, $total_records, $scroll_page, $per_page, $current_page, $inactive_page_tag, $previous_page_text, $next_page_text, $first_page_text, $last_page_text, $pager_url_last);
$sql = mysql_query($query." ORDER BY fault_register.fault_regis_date LIMIT ".$kgPagerOBJ -> start.", ".$kgPagerOBJ -> per_page."");
#------ตัวแบ่งหน้า คือ <ก่อนหน้า , 1 , 2 , 3 , ต่อไป> จะเอาไปแปะตรงไหนก็ได้ในหน้าเพจ----#
echo '<p id="pager_links">';
echo $kgPagerOBJ -> first_page;
echo $kgPagerOBJ -> previous_page;
echo $kgPagerOBJ -> page_links;
echo $kgPagerOBJ -> next_page;
echo $kgPagerOBJ -> last_page;
#-------------ส่วนแสดงผลจำนวน record ทั้งหมด--------------#
echo '<strong> จำนวนแถว : </strong>';
echo $kgPagerOBJ -> total_records; echo '<strong> แถว</strong>';
echo ' <strong>จำนวน : </strong>';
echo $kgPagerOBJ -> total_pages; echo '<strong> หน้า</strong>';
#-------------จบส่วนแสดงผลจำนวน record ทั้งหมด--------------#
while ($read = mysql_fetch_assoc($sql)) {
$i++;
if($read['payment_status'] == 1){
$paytext = 'ชำระแล้ว';
$bgcolor = '#91FE6D';
}else if($read['payment_status'] == 2){
$paytext = 'ชำระบางส่วน';
$bgcolor = '#FFE06F';
}else{
$paytext = 'ยังไม่ได้ชำระ';
$bgcolor = '#FF6D74';
}
?>
<tr class="aqua_treatment_text" id="<?php echo $read['regis_key'];?>">
<td align="center"><?php echo @$i;?></td>
<td> <?php echo $read['fault_name']?></td>
<td> <?php echo $read['fault_name_description'];?></td>
<td align="center" valign="middle"> <?php echo $read['regis_price'];?></td>
<td align="center" valign="middle" > <?php echo @dateTimeConvertor($read['fault_regis_date']);?></td>
<td align="center" bgcolor="<?php echo $bgcolor;?>" style="color:#111111;"><?php echo @$paytext;?></td>
<td align="center">
<?PHP if( $read['payment_status'] != 1){ ?>
<a href="./?p=money_pay&key=<?php echo @$read['regis_key'];?>"><div class="button_symbol green"><img src="../media/icons/set/white/money.png" width="25" height="25" alt=""id=pay title="ชำระเงิน"/></div></a>
<?PHP } ?>
<div class="button_symbol red" onClick="javascript:delete_Card('<?php echo $read['regis_key'];?>');"><img src="../media/icons/set/white/delete1.png" width="25" height="25" alt="" title="ลบจากระบบ"/></div></td>
</tr>
<?php
}
?>
</table>
Tag : PHP, Appserv
|
ประวัติการแก้ไข 2019-06-12 09:56:10 2019-06-12 09:58:47 2019-06-12 10:17:10
|
|
|
|
|
Date :
2019-06-12 09:55:01 |
By :
Error 404 |
View :
763 |
Reply :
7 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ตัวอย่างครับ
$i = $kgPagerOBJ -> start;
while( $resultcontent = $getcontent->fetch() ){
++$i;
echo $i;
}
|
|
|
|
|
Date :
2019-06-12 10:16:25 |
By :
arm8957 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แล้วมันติดปัญหาอะไร document ของ kgPager อ่านหรือยัง
ลองศึกษาวิธีการ debug โปรแกรมดูบ้างหรือเปล่าครับ ตรงนี้สำคัญมาก ทำอะไรผิดจะได้รู้ด้วยตัวเอง
|
|
|
|
|
Date :
2019-06-12 10:26:34 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
https://www.thaicreate.com/php/forum/122621.html ทางเลือก
...
จริงๆการเรียก class object method เขาไม่เว้นช่องว่างนะครับ ไม่เข้าใจว่าเว้นแล้วทำไมมันไม่ notice, warning, error หรือยังไง
ตัวอย่าง
Code (PHP)
$Class->method();
// ไม่ใช่
$Class -> method();
|
|
|
|
|
Date :
2019-06-12 15:34:16 |
By :
mr.v |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 00
|