GORAGOD.com

freelance, web developer, web designer, hosting, domain name

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 4,477

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

<?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 ขนาดไฟล์ไม่เกิน 2M
^