|
|
|
Record List Paging / Pagination อยากทราบว่าถ้าไม่ใช้ sql มีวิธีอื่นไหมครับ |
|
|
|
|
|
|
|
ลองใช้ Datatable ดูครับ ส่วนการปรับค่าต่างๆ หาได้จาก google หรือไม่ก็โพสต์ถามไว้ เดี๋ยวมีคนช่วยตอบให้ครับ
Code ตัวอย่างครับ (PHP)
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script type=text/javascript src="http://www.datatables.net/release-datatables/media/js/jquery.dataTables.min.js"></script>
<link href="http://www.datatables.net/release-datatables/media/css/demo_table_jui.css" rel="stylesheet">
<script type="text/javascript">
$(document).ready( function() {
$('#datatables').dataTable();
});
</script>
<?php
echo '<div style="width:500px;">';
echo '<table id="datatables" class="display dataTable"><thead><tr><th>Col1</th><th>Col2</th></tr></thead>';
for($i=0;$i<25;$i++){
echo '<tr><td>Col1_'.$i.'</td><td>Col2_'.$i.'</td></tr>';
}
echo '<table></div>';
?>
|
ประวัติการแก้ไข 2013-03-12 00:27:23 2013-03-12 00:29:48
|
|
|
|
Date :
2013-03-12 00:24:27 |
By :
mangkunzo |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ตัวนี้เลยครับ ใช้ Array เหมือนกัน
Code (PHP)
<html>
<head>
<title>ThaiCreate.Com PHP & Text File Pagination</title>
</head>
<body>
<?
$arrFile = null;
$objOpen = opendir("files/"); /*** folder ***/
while (($file = readdir($objOpen)) !== false)
{
if($file != "." && $file != "..")
{
$arrFile[] = $file;
}
}
/*** Soft ***/
//rsort($arrFile); // DESC
//asort($arrFile); // ASC
$Num_Rows = count($arrFile);
$Per_Page = 5; // Per Page
$Page = $_GET["Page"];
if(!$_GET["Page"])
{
$Page=1;
}
$Prev_Page = $Page-1;
$Next_Page = $Page+1;
$Page_Start = (($Per_Page*$Page)-$Per_Page)+1;
if($Num_Rows<=$Per_Page)
{
$Num_Pages =1;
}
else if(($Num_Rows % $Per_Page)==0)
{
$Num_Pages =($Num_Rows/$Per_Page) ;
}
else
{
$Num_Pages =($Num_Rows/$Per_Page)+1;
$Num_Pages = (int)$Num_Pages;
}
$Page_End = $Per_Page * $Page;
if($Page_End > $Num_Rows)
{
$Page_End = $Num_Rows;
}
?>
<table width="300" border="1">
<tr>
<th width="50"> <div align="center">No </div></th>
<th width="250"> <div align="center">Files </div></th>
</tr>
<?
$no = 1;
if($Page > 1)
{
$no = ($Per_Page * ($Page-1)) + 1;
}
for($i=$Page_Start;$i<=$Page_End;$i++)
{
?>
<tr>
<td><div align="center"><?=$no;?></div></td>
<td><?=$arrFile[$i-1];?></td>
</tr>
<?
$no++;
}
?>
</table>
<br>
Total <?= $Num_Rows;?> Record : <?=$Num_Pages;?> Page :
<?
if($Prev_Page)
{
echo " <a href='$_SERVER[SCRIPT_NAME]?Page=$Prev_Page'><< Back</a> ";
}
for($i=1; $i<=$Num_Pages; $i++){
if($i != $Page)
{
echo "[ <a href='$_SERVER[SCRIPT_NAME]?Page=$i'>$i</a> ]";
}
else
{
echo "<b> $i </b>";
}
}
if($Page!=$Num_Pages)
{
echo "<a href ='$_SERVER[SCRIPT_NAME]?Page=$Next_Page'> Next>></a> ";
}
?>
</body>
</html>
Screenshot
|
|
|
|
|
Date :
2013-03-12 09:25:01 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เอ่อ คือผมต้องเอาค่า array ที่ได้มาแต่ละตัว write ลงไปใน text file เหรอครับ? ถ้าเป็นงั้น แล้ว text file มันต้องสร้างทุกครั้งเลยเหรอครับ เช่น มี 100 array ก็ 100 text file [แล้วมันจะลบออกไปเองไหมอะครับ พอดึงข้อมูลมาเป็น table เสร็จ?]
|
|
|
|
|
Date :
2013-03-12 10:10:07 |
By :
copsychus |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ถ้ามีตัวที่ว่านี้ อยู่ในหน้าเดียวกัน = 2 table จะมีค่าตัวแปรตัวไหนที่มัน เป็นเฉพาะของ table ไหมครับ
หรือว่า มันใช้ตารางแบบนี้ได้แค่ 1 อันต่อ 1 หน้า? เพราะตัวนี้รึเปล่าครับ $_SERVER[SCRIPT_NAME]?Page=$Prev_Page'><
|
ประวัติการแก้ไข 2013-03-12 10:50:22
|
|
|
|
Date :
2013-03-12 10:40:43 |
By :
copsychus |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ดันเล็กน้อยครับ
|
|
|
|
|
Date :
2013-03-12 21:03:04 |
By :
copsychus |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#7 Datatable พอใส่ 2 ตารางในหน้าเดียวกัน แล้ว ตัวบนมีครบ แต่table ตัวล่าง กลับไม่มี ตัว ปุ่มว่า โชว์กี่อันต่อหน้า, ปุ่ม Search หาย แล้วก็ปุ่ม Previous, Next กับ Total record หายครับ ทำยังไงดี
-แก้ได้ละครับ ปรับ ตรง jquery ให้มี 2 อันก็พอแล้ว แก้ไปแก้มาจนมั่วได้
|
ประวัติการแก้ไข 2013-03-14 14:51:51 2013-03-14 16:23:08 2013-03-14 16:40:50
|
|
|
|
Date :
2013-03-14 14:48:20 |
By :
copsychus |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลองใช้ภาษาไทย ปรับตรงหัวข้อแล้ว มันมีปัญหาครับ
ถ้าหัวข้อเป็น ภาษาอังกฤษ [หัวตาราง แต่ละัแถว] มันจะ ตารางกว้างมากครับ ซึ่งปรับลดไม่ได้
แต่พอเป็น ภาษาไทย แล้ว ตารางจะแคบมากเลยครับ บางหัวแถว มันบีบจนเหลือ 2 บรรทัดเลยครับ ต้องใช้ th width, table width แล้ว ไม่เป็นผลครับ มันยังบีบเหมือนเดิม ไม่ขยับเลยแม้แต่น้อย
ต้องทำยังไงเหรอครับ?
|
|
|
|
|
Date :
2013-03-25 00:43:34 |
By :
copsychus |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ถ้าเป็น table กำหนดพวก width="100px" ให้เป็น pixel ครับ
|
|
|
|
|
Date :
2013-03-25 06:36:52 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 04
|