Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,027

HOME > PHP > PHP Forum > ดึงข้อมูลจากไฟล์ CSV มาแสดงด้วย PHP แล้วจัดเรียงข้อมูลมากกว่า1ฟิลทำอย่างไรคะ



 

ดึงข้อมูลจากไฟล์ CSV มาแสดงด้วย PHP แล้วจัดเรียงข้อมูลมากกว่า1ฟิลทำอย่างไรคะ

 



Topic : 124459



โพสกระทู้ ( 5 )
บทความ ( 0 )



สถานะออฟไลน์




อันนี้เป็นไฟล์ CSV ที่อยู่ในExcel
fileex2

ถ้าสมมุติดึงไฟล์จาก CSV มาแสดงใน PHP
คือโค้ดที่ทำได้ตอนนี้ อ้างอิงการจัดลำดับจากฟิลแรก
จะเพิ่มจำนวนการจัดลำดับให้มากกว่า1ฟิวได้หรือไม่?
คือ ตรง Score เราอยากให้คลิก
แล้วมันก็จัดเรียงให้คะแนนมากสุดขึ้นมาแทนที่จะเป็นการ
จัดลำดับจากฟิวแรก แต่ถ้าไม่คลิก มันก็จะให้อ้างอิงจากฟิวแรกเหมือนเดิม

Pex2


Code (PHP)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html>  
<head> 
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 
  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
  <link href="css/bootstrap.min.css" rel="stylesheet">
  <link href="css/bootstrap-theme.css.map.css" rel="stylesheet" type="text/css">
</head>
<body>
<?php
$arrFile =  array(); 
 
$objOpen = fopen('tcg_teams.csv', 'r');
while (($result = fgetcsv($objOpen,1000, ",")) !== false)
{   
 if($result != "." && $result != "..")
 {
  $arrFile[] = $result;
}
}
 
rsort($arrFile);
$Num_Rows = count($arrFile);  

//  Limit   //
if  ($limit = $_GET["limit"]) //per page non -fix
{
  $Per_Page = $limit;
}
else
{
  $Per_Page = 10;   // Per Page fix
} 

//  Page  //
 $Page=1;
 if(isset($_GET["Page"]))
 {
 $Page = $_GET["Page"];
 }

$Prev_Page = $Page-1;  
$Next_Page = $Page+1;  

$Page_Start = (($Per_Page*$Page)-$Per_Page);
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 class="table table-hover" width="80%" border="1">
  <tr  >
    <td width="91" style="color: #208FB7"> <div align="center">NO</div></td>
    <td width="98" style="color: #208FB7"> <div align="center">Name</div></td>
    <td width="198" style="color: #208FB7"> <div align="center">Score</div></td>
    <td width="97" style="color: #208FB7"> <div align="center">Time</div></td>
  </tr>



  <?php
  $no = 0; //1
  if($Page > 0)  //1
  {
    $no = ($Per_Page * ($Page-1)) + 1;
  }
      for($i=$Page_Start;$i<$Page_End;$i++)
    {

 
 
  ?>

    <tr>    
      <td><div align="center"><?php echo $arrFile[$i][0];?></div></td> 
      <td><div align="center"><?php echo $arrFile[$i][1];?></div></td>
      <td><div align="center"><?php echo $arrFile[$i][2];?></div></td>
      <td><div align="center"><?php echo $arrFile[$i][3];?></div></td>
    </tr>


<?php
  }
   $no++;
 
  ?>
</table>

<h5>Total <?php echo "count:";print_r($Num_Rows); ?> Record : <?php echo $Num_Pages; ?> Page :</h5>


<nav aria-label="Page navigation">
<ul class="pager">
<?php 
if($Prev_Page)  
{
  echo "<li><a href='$_SERVER[SCRIPT_NAME]?limit=$limit&Page=1'> << </a></li>";
 
}

if($Prev_Page)
{
  echo "<li><a href='$_SERVER[SCRIPT_NAME]?limit=$limit&Page=$Prev_Page'> < </a></li>";
 
}

 
 echo "<li><a>$Page</a></li>";
 
if($Page!=$Num_Pages)
{
  echo "<li><a href ='$_SERVER[SCRIPT_NAME]?limit=$limit&Page=$Next_Page'>></a></li>";
 
}

if($Page!=$Num_Pages)   
{
  echo "<li><a href ='$_SERVER[SCRIPT_NAME]?limit=$limit&Page=$Num_Pages'> >></a></li>";
 
}

?> 
</ul>
</nav>

</body>
</html>


TwT"



Tag : PHP









ประวัติการแก้ไข
2016-09-02 13:57:27
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2016-09-02 13:55:19 By : rayka View : 2615 Reply : 3
 

 

No. 1



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

กำหนด Column ดูครับ

Code (PHP)
<?php
$ar = array(
       array("10", 11, 100, 100, "a"),
       array(   1,  2, "2",   3,   1)
      );
array_multisort($ar[0], SORT_ASC, SORT_STRING,
                $ar[1], SORT_NUMERIC, SORT_DESC);
var_dump($ar);
?>







แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-09-02 17:04:16 By : mr.win
 


 

No. 2



โพสกระทู้ ( 1,463 )
บทความ ( 1 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Blogger

อีกแบบนึงใช้ usort ได้ครับ

Code (PHP)
<?php

$a = array(
    array(2,6,101),
    array(1,3,102),
    array(1,4,103),
    array(2,5,104),
);

usort($a,function($x,$y){
    if ($x[0]> $y[0]){
        return 1;
    }
    elseif ($x[0] < $y[0]){
        return -1;
    }
    else{
        if ($x[1] > $y[1]){
            return 1;
        }
        elseif ($x[1] < $y[1]){
            return -1;
        }else{
            return 0;
        }
    }
});

echo '<pre>';
print_r($a);
echo '</pre>';
?>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-09-02 23:53:49 By : num
 

 

No. 3



โพสกระทู้ ( 5 )
บทความ ( 0 )



สถานะออฟไลน์


>.< ขอบคุณสำหรับคำแนะนำค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-09-08 09:51:06 By : rayka
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ดึงข้อมูลจากไฟล์ CSV มาแสดงด้วย PHP แล้วจัดเรียงข้อมูลมากกว่า1ฟิลทำอย่างไรคะ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 00
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่