สอบถาม เรื่อง SUM จากตัวแปรที่เราเก็บค่าไว

ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา สอบถาม เรื่อง SUM จากตัวแปรที่เราเก็บค่าไว

สอบถาม เรื่อง SUM จากตัวแปรที่เราเก็บค่าไว


กรอบน้ำเงิน ได้ เพราะ sumจากฐานข้อมูล

ส่วนกรอบแดง sumจากตัวแปรที่เก็บค่า  เช่น

$depre=$price1/$year1;

ผมต้องการ sum จากค่าที่เก็บไว คือ $depre

ขอแนะนำหน่อย ครับบบบ



 



Baby 1.179.131.xxx 29-11-2016 11:44:04

คำแนะนำ และการใช้งาน

สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก


  • ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ
  • เปลี่ยน


    ( หรือ เข้าใช้งานผ่าน Social Login )

 ความคิดเห็นที่ 1
ได้ แล้ว ครับบบบ

$depre=$price1/$year1;
$sum1+=$depre;
echo 
$sum1;


baby 1.179.131.xxx 29-11-2016 12:02
 ความคิดเห็นที่ 2
มันรวมค่าหน้าแรก พอหน้าถัดไปมัน รวมค่าใหม่  ถ้า กดไปหน้าถัดไป ไปเรื่อยๆ มันจะ รวมหใม่ ตลอด
ผมต้องการให้มันรวมค่าทั้งหมดที่แสดง ครั้งเดียว 


ขอคำแนะนำหน่อย ครับบบบ


baby 1.179.131.xxx 29-11-2016 15:30
 ความคิดเห็นที่ 3
  ไม่น่าจะทำได้ในรูปแบบคิวรี่ปกติ ถ้าข้อมูลไม่เยอะมากๆ ใช้วิธีคิวรี่ครั้งเดียวทำเป้น array ทั้งหมดครั้งเดียว น่าจะพอได้
แล้วค่อยเอา array ไปแบ่งหน้าข้อมูลอีกที เป็นแค่ไอเดีย


ninenik 183.88.39.xxx 29-11-2016
 ความคิดเห็นที่ 4
พอมีตัวอย่าง หรือ รูปแบบไหมครับบ ในการ คิวรี่แบบarray


baby 1.179.131.xxx 30-11-2016 08:15
 ความคิดเห็นที่ 5
ลองเอาโค้ดนี้ไปทดสอบรันดูเป็นแนวทาง

<!doctype html>
<html lang="en">
<head>
	<meta charset="UTF-8">	
	<title>Document</title>
</head>
<body>




<br>
<div style="margin:auto;width:500px;">
<?php
// ฟังก์ชั่นสำหรับบวก array ตามช่วงของ key
function sumArray($array, $min, $max) {
   $sum = 0;
   foreach ($array as $k => $v) {
      if ($k >= $min && $k <= $max) {
         $sum += $v;
      }
	  if($k > $max){
		  return $sum;
		  break;
	  }
   }
   return $sum;
}


$data_arr = array();

////////////////////////
// สมมติข้อมูลตัวอย่าง มีข้อมูลเลข 1 - 9
for($i = 1 ;$i <= 9;$i++){
	$data_arr[] = $i; // วันลูปเก็บใน array
}
// ถ้าดังจากฐานข้อมูลก็ประมาณนี้
	/*$sql = "
	SELECT * FROM tbl_demo
	";
	$result = $mysqli->query($sql);
	if($result){
		while($row = $result->fetch_assoc()){
			$data_arr[] = $row['ฟิลด์ข้อมูล'];  // วันลูปเก็บใน array
		}
	}
*/
///////////////////////////

//echo sumArray($data_arr,0,2);
echo '<br>';
$total = count($data_arr); // จำนวนรายการทั้งหมด
// จำนวนรายการที่ต้องการแสดง แต่ละหน้า
$perPage = 2;

// คำนวณจำนวนหน้าทั้งหมด
$num_naviPage=ceil($total/$perPage);

// กำหนดจุดเริ่มต้น และสิ้นสุดของรายการแต่ละหน้าที่จะแสดง
if(!isset($_GET['page'])){
	$s_key=0;
	$e_key=$perPage;	
	$_GET['page']=1;
}else{
	$s_key=($_GET['page']*$perPage)-$perPage;
	$e_key=$perPage*$_GET['page'];
	$e_key=($e_key>$total)?$total:$e_key;
}
for($i=1;$i<=$num_naviPage;$i++){
	echo "  || <a href="?page=".$i."">Page $i</a>";	
}
echo "<hr>";
// แสดงรายการ
for($indexData = $s_key; $indexData<$e_key; $indexData++){
		echo $data_arr[$indexData]."<br>";
}
echo "<hr>";
echo sumArray($data_arr,0,$e_key-1);
echo "<hr>";
// แสดงหน้าปัจจุบัน
echo "<br>Page:".$_GET['page'];
?> 
</div>


</body>
</html>


การประยุกต์เพิ่มเติมจำเป็นต้องเข้าใจ และมีข้อมูลประกอบ


ninenik 183.88.39.xxx 30-11-2016
1






เว็บไซต์ของเราให้บริการเนื้อหาบทความสำหรับนักพัฒนา โดยพึ่งพารายได้เล็กน้อยจากการแสดงโฆษณา โปรดสนับสนุนเว็บไซต์ของเราด้วยการปิดการใช้งานตัวปิดกั้นโฆษณา (Disable Ads Blocker) ขอบคุณครับ