php เขียนนับจำนวนคนไข้แล้วเก็บใส่ใน array 2 มิติยังไงคะ???


    สวัสดีค่ะ ต้องการเขียนเพื่อนับจำนวนคนไข้ที่มารักษาในแต่ละวัน 

    ตัวอย่างข้อมูล คือ

    (รหัส-รหัสคนไข้-วันที่มารักษา-รหัสโรค)

    1-02154-01-1

    2-00126-01-5

    3-08142-01-5

    4-00458-02-2

    5-00357-02-5

    ..

    ...

    ....

    ผลลัพธ์ที่ต้องการคือ

    รหัสโรค-วันที่มารักษา-จำนวนคนไข้

    1-01=1

    5-01=2

    2-02=1

    5-02=1

    

    ทีนี้ ก่อนหน้านี้ลองเขียนแบบอัดใส่ array แบบมิติ เดียว ผลออกมาได้แล้ว แต่คิดว่าคงใช้ไม่ได้ ต้องใช้แบบ 2 มิติ แต่ลองเขียนแล้วไม่ออกค่ะ..เขียนแบบ 2 มิติยังไงอ่ะคะ

    

    นี่คือ code ของ array มิติเดียวค่ะ

    $i =0;

    $total = array();

    

    //**

    for($i=0;$i<=31;$i++) {

         $rou=substr('0'.$i,-2,2); //ตัดค่าที่ได้จากใน DB มานำมาเปรียบเทียบในบรรทัดล่าง ตัวอย่างที่ได้คือ 01,02,03....,31

         if($dFrom==$rou){ //เปรียบเทียบค่าที่ได้ ว่าตรงกับวันไหน

           $total[$i]=$total[$i]+1; // ถ้าตรงกันก็นับ

           echo"total$i]=$total$i]<br>";

         }

    }


30 มิ.ย. 2554 2 3,115

ตัดเอาเลขท้ายออกมาก่อนเลยครับจะได้ประมาณนี้

<?php

for (....){

  $d = substr('0', $i, -4); // จะได้ 4 ตัวหลัง 01-1,01-5,01-5,02-2,02-5 ถ้าไม่ใช่คำสั่งนี้ลองเขียนให้ถูกดูนะครับ แต่จะต้องได้ผลลัพท์แบบนี้

  list($a, $b) = explode('-', $d); // แยกออกด้วย -

  $total["$b-$a"]++;

}

print_r($total); // ผลลัพท์

?>


#1


    ได้แล้วค่ะ ใช้วิธีการใส่ข้อมูลลงใน array แล้วค่อยมาเปรียบเทียบค่า



$sql="select disease.dsID,insertstaff.dFrom from insertstaff,disease where(insertstaff.dsID=disease.dsID)";
$result = mysql_query($sql);
    $i = 1;
    while ($show = mysql_fetch_array($result))
    {
         $data[$i] = array('dsID' => $show['dsID'],'dFrom' => $show['dFrom']);
        $i++;
    }

ขอบคุณค่ะ

#2
ความคิดเห็น
ไฟล์อัปโหลด ชนิด jpg, jpeg ขนาดไฟล์ไม่เกิน 1024
^