script จัดเรียงตามหัวตาราง ทำยังไงคะ

สำหรับผู้ที่ เริ่มต้น Programming - PHP มีอะไร แนะนำ หรือข้อสงสัยต้องบอร์ด นี้ คนที่มีความรู้ แบ่งปันคนอื่นบ้างนะ ปัญหาการเขียนโปรแกรม แบบ OOP Session Cookies php network

Moderators: mindphp, ผู้ดูแลกระดาน

buay
PHP Super Member
PHP Super Member
Posts: 250
Joined: 02/06/2014 9:55 am

script จัดเรียงตามหัวตาราง ทำยังไงคะ

Post by buay »

จะทำสคริปต์จัดเรียงตามหัวตารางต้องทำยังไงคะ
User avatar
thatsawan
PHP VIP Members
PHP VIP Members
Posts: 27264
Joined: 31/03/2014 10:02 am
Contact:

Re: script จัดเรียงตามหัวตาราง ทำยังไงคะ

Post by thatsawan »

เรียงหัวข้อตาราง....?
User avatar
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
Posts: 25929
Joined: 22/09/2008 6:18 pm
Contact:

Re: script จัดเรียงตามหัวตาราง ทำยังไงคะ

Post by mindphp »

buay wrote:จะทำสคริปต์จัดเรียงตามหัวตารางต้องทำยังไงคะ
เรียงหัวตารางอะไร :?:
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
buay
PHP Super Member
PHP Super Member
Posts: 250
Joined: 02/06/2014 9:55 am

Re: script จัดเรียงตามหัวตาราง ทำยังไงคะ

Post by buay »

ยกตัวอย่างนะคะ สมมติว่ามี1 ตาราง ภายในตารางประกอบด้วย3 คอลัม คือ 1 ลำดับ 2 ชื่อ นามสกุล 3 เบอร์โทรศัพท์ เมื่อคลิกที่คอลัม ชื่อ-นามสกุล แล้วให้ข้อมูลในคอลัมชื่อ-นามสกุล จัดเรียงตามลำดับ โดยที่คอลัม ลำดับ และ เบอร์โทรศัพท์ จัดเรียงตามด้วย ต้องทำยังไงคะ
buay
PHP Super Member
PHP Super Member
Posts: 250
Joined: 02/06/2014 9:55 am

Re: script จัดเรียงตามหัวตาราง ทำยังไงคะ

Post by buay »

ทำได้แล้วค่ะ ใช้ function รับค่า

Code: Select all

function load_data(k,d)
    {
        $(".content").html('<div style="text-align:center"><img src="../images/loading_wh.gif"></div>');    
        $(".content").load("page3.php?k="+k+"&d="+d+"&rand={TIME}");
    }
ส่งค่าไป function load_data

Code: Select all

        <td align="center">{L_NUM}</td>
        <td align="center" onclick="load_data('a','{DD}')" onmouseover="this.style.cursor='pointer';">{L_CAR}</td>
        <td align="center">{L_TIME}</td>
        <td align="center">{L_W}</td>
        <td align="center">{L_WIN}</td>
        <td align="center">{L_WOUT}</td>
        <td align="center" onclick="load_data('b','{DD}')" onmouseover="this.style.cursor='pointer';">{L_TYPE}</td>
        <td align="center" onclick="load_data('c','{DD}')" onmouseover="this.style.cursor='pointer';">{L_NAME}</td>
ตรวจสอบค่าที่รับมา

Code: Select all

$or = array('TRUCK ASC','PRODUCT ASC','COMPANY ASC','TMIN ASC');

if($_GET['k']=='a'){    
    $fd = $or[0];
}else if($_GET['k']=='b'){
            $fd = $or[1];
      }else if($_GET['k']=='c'){
                $fd = $or[2];
            }else{
                $fd = $or[3];
             }
 $sql =  "select 
            TRUCK, 
            TMIN, 
            TMOUT, 
            (W1-W2)/1000 AS sum_w, 
            (W1/1000) AS car_in , 
            (W2/1000) AS car_out, 
            PRODUCT, 
            COMPANY, 
            (W1-W2)/1000 AS wa, 
            (W1-W2)/1000 AS wb                                               
    FROM  wdata 
    WHERE dayin=".set_f_date($sql_m_b)."
        ORDER BY ".$fd."";
เมื่อคลิกที่หัวตารางข้อมูลก็จะเรียงจากน้อยไปหามาก

** ถามต่อค่ะ แล้วจะทำยังไงเมื่อให้คลิกอีกครั้งแล้วให้ข้อมูลเรียงจากมากไปหาน้อยคะ
User avatar
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
Posts: 25929
Joined: 22/09/2008 6:18 pm
Contact:

Re: script จัดเรียงตามหัวตาราง ทำยังไงคะ

Post by mindphp »

เก็บค่าไว้ใน Javascript แล้ว swap ASC, DESC ตามการคลิกก่อนหน้า
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
buay
PHP Super Member
PHP Super Member
Posts: 250
Joined: 02/06/2014 9:55 am

Re: script จัดเรียงตามหัวตาราง ทำยังไงคะ

Post by buay »

ทำได้แล้วค่ะ ขอบคุณค่ะ

เพิ่มการรับค่าอีก 1 ตัว ไว้เก็บค่า ASC,DESC

Code: Select all

function load_data(k,s,d)
    {
        $(".content").html('<div style="text-align:center"><img src="../images/loading_wh.gif"></div>');    
        $(".content").load("page3.php?k="+k+"&s="+s+"&d="+d+"&rand={TIME}");
    }
ทำการตรวจสอบค่า ASC และ DESC

Code: Select all

$or = array('TRUCK ASC','PRODUCT ASC','COMPANY ASC','TMIN ASC','TRUCK DESC','PRODUCT DESC','COMPANY DESC','TMIN DESC');

if($_GET['s']=='DESC'||$_GET['s']==''){
    $template->assign_vars(array( 
        'S'         => 'ASC',
    ));
}else {
    $template->assign_vars(array( 
        'S'         => 'DESC',
    ));
}
if($_GET['k']=='a'){ 
    if($_GET['s']!='ASC'){
        $fd = $or[0];
    }else{
        $fd = $or[4];
    }
}else if($_GET['k']=='b'){
            if($_GET['s']!='ASC'){
                $fd = $or[1];
            }else{
                $fd = $or[5];
            }
      }else if($_GET['k']=='c'){
                if($_GET['s']!='ASC'){
                    $fd = $or[2];
                }else{
                    $fd = $or[6];
                }
            }else{
                $fd = $or[3];
            }
 $sql =  "select 
            TRUCK, 
            TMIN, 
            TMOUT, 
            (W1-W2)/1000 AS sum_w, 
            (W1/1000) AS car_in , 
            (W2/1000) AS car_out, 
            PRODUCT, 
            COMPANY, 
            (W1-W2)/1000 AS wa, 
            (W1-W2)/1000 AS wb                                               
    FROM  wdata 
    WHERE dayin=".set_f_date($sql_m_b)."
        ORDER BY ".$fd."";
ส่งค่าไปยัง function

Code: Select all

<tr bgcolor="#CCCCCC">
        <td align="center">{L_NUM}</td>
        <td align="center" onclick="load_data('a','{S}','{DD}')" onmouseover="this.style.cursor='pointer';">{L_CAR}</td>
        <td align="center">{L_TIME}</td>
        <td align="center">{L_W}</td>
        <td align="center">{L_WIN}</td>
        <td align="center">{L_WOUT}</td>
        <td align="center" onclick="load_data('b','{S}','{DD}')" onmouseover="this.style.cursor='pointer';">{L_TYPE}</td>
        <td align="center" onclick="load_data('c','{S}','{DD}')" onmouseover="this.style.cursor='pointer';">{L_NAME}</td>
      </tr>
Post Reply
  • Similar Topics
    Replies
    Views
    Last post

Return to “Programming - PHP”

Who is online

Users browsing this forum: Google Adsense [Bot] and 19 guests