ขอถามเรื่องการคำนวณนะครับ ตามภาพนะครับ ผมใช้ Code แบบบ้านๆนะครับ
echo "". $row['']. " ". $row['SUM(excel)'];
แก้เป็น
echo "". $row[0]. " ". $row[1];
ที่มันขึ้นบันทัดใหม่ เพราะช่อง td มันแคบไป ถ้าอยากให้ติดกัน
echo $row[0]. " ". $row[1];
และก็น่าจะศึกษาการใช้ fetch_array ดูว่ามันให้ค่าอะไรมา
print_r($row);
แล้วลองใช้ mysql_fetch_assoc() ดูบ้าง แล้วลอง
print_r( $row); มาหาข้อแตกต่าง ดูนะครับ
อีกอันก็ mysql_fetch_row() ทดลองดูจะได้เลือกใช้ได้อย่างเหมาะสม
Date :
2015-11-06 12:57:44
By :
NewbiePHP
ลองแก้ดูแล้วนะครับ
ผลลัพครับ ไม่รู้ว่าแก้ถูกจุดรึเปล่านะครับ
แต่มันยังใช่ไม่ได้ครับ
Date :
2015-11-06 13:26:25
By :
pissanu8970
ได้มาระดับหนึ่งแล้วครับ
Code นะครับ อันแน่แค่ เอา BR ของเก่าที่ใส่ไว้ออกครับ
ผลลัพนะครับ
ยังติดค่า 0 มาด้วยไม่แน่ใจว่าจะแก้ที่อะไรจากที่ผมสงสันคือ โปรแกรมไม่สามารถคำนวณค่าที่น้อยกว่า 1 ได้เลยต้องเป็น 0 เพราะในตารางผมใ่ 0 - 1 สามตัวนี้ครับ ถ้าเป้นเลข 1 โปรแกรมนับให้ครับ ถ้าเป็นตัวอืนไม่นับครับ เพราะลอง 3 บรรทัดครับ อันแรกใส่ 1 1 1 โปรแกรมคำนวณให้เป็น 3 อันที่ 2 ใส่ 1 0 1 โปรแกรมคำนวณมาให้ 0 2 แต่จะมี 0 ติดมาด้วยครับ รบกวนผู้รู้ด้วยครับ
โคดผมให้ไปไม่หมดครับ
ประวัติการแก้ไข 2015-11-06 14:54:14 2015-11-06 15:59:13
Date :
2015-11-06 14:49:08
By :
pissanu8970
ผมว่าอย่าหวงโค๊ตนักเลยครับ เอามันมาทั้ง ลูปเลยเดีกว่า เอามาแค่บางส่วน แน่ใจเหรอครับว่า เอามาถูก
โค๊ดตัวเองยังเขียนผิด แล้วไม่นึกหรือครับว่าจะเอามาแสดงถูกต้อง
โค๊ดนิดเดียว มันจะออกอะไรมาได้เยอะแยะ
Date :
2015-11-06 14:51:37
By :
NewbiePHP
ที่มันเป็น 2 บันทัด เพราะมันมีข้อมูล 2 row หรือเปล่า ทดสอบเอาโค๊ดไปรัน ใน phpmyaddmin ดูก่อนครับ
SELECT excel, SUM(excel) se FROM customer GROUP BY excel
เอาแค่คำสั่งข้างบน ไปรันใน phpmyadmin ครับ เชื่อว่า ต้องมี 2 รายการ
ปล. ข้างล่างนี้เป็นตัวอย่างการเขียนโปรแกรม เอาของเจ้าของกระทู้มา optimize
Code (PHP)
<?php
$ebits = ini_get('error_reporting');
error_reporting($ebits ^ E_NOTICE);
// ย้ายมาไว้ตอนต้นโปรแกรม ใช้ครั้งเดียวทั้งโปรแกรม
///////////////////////////////////////////////////////////////////////////////////////////////
session_start();
///////////////////////////////////////////////////////////////////////////////////////////////
if( ! isset($_SESSION['UserID'])){ echo "Please Login!"; exit(); }
if($_SESSION['Status'] != "USER") { echo "This page for User only!"; exit(); }
///////////////////////////////////////////////////////////////////////////////////
$db=new mysqli("localhost","root","root","member");
//ย้ายมาใช้ mysqli ได้แล้วครับ หัดใหม่ก็ใช้ของใหม่ไปเลย และ แบบ oop ใช้ง่าย ลองดูครับ
$db->set_charset("utf-8");
// set charset ภาษาไทย ไว้หลังจาก connect ไม่ใช่ว่าไว้ตรงไหนก็ได้ คิวรี่ก่อน set ที่คิวรี่มาก็เสีย
///////////////////////////////////////////////////////////////////////////////////
$strSQL = "SELECT * FROM member WHERE UserID = '".$_SESSION['UserID']."' ";
$objQuery = $db->query($strSQL) or die ($strSQL.'<br>'.$db->error); // กำลังเรียนรู้อยาลืมใช้ bug report ครับ
$objResult = $objQuery->fetch_assoc(); // fetch_array เลิกใช้ได้แล้วครับ มันให้ข้อมูลซ้ำซ้อน เปลืองเมมโมรี่
///////////////////////////////////////////////////////////////////////////////////
$del_id = isset($_REQUEST['del_id']) ? $_REQUEST['del_id'] : '';
// เครื่องหมาย @ ไว้หน้า function เป็นการปิดการแสดง error message กำลังศึกษาเรียนรู้อย่าเพิ่งใช้ครับ
if( $del_id){
// ตรวจสอบตัวแปรด้วยว่ามีหรือเปล่า จะได้ไม่ error
$sql_del = "delete from customer where id = $del_id";
$db->query($sql_del) or die($db->error);
}
////////////////////////////////////////////////////////////////////////////////////
/// อย่าลื่ม header html ใส่เอาไว้ให้เป็นนิสัย มันมีผลกับการทำงาน ของ browser กำหนดวิธีการเรียกใช้คำสั่ง
/// ซึ่งต้องศึกษาอีกเยอะครับ
?>
<!doctype html>
<html>
<head>
<title>Pissanu Pongoubon Test</title>
<meta charset="utf-8">
<link rel="stylesheet" href="/assessory/css/blabla.css"><!-- เอา cssไปไว้ในไฟล์ -->
<!-- /////////////////////////////////////// -->
<!-- javascript พยายามเอามาไว้ส่วนหัว แยกส่วนการทำงานให้ชัดเจน -->
<!-- /////////////////////////////////////// -->
<script language="javascript">
function printpr(){
var OLECMDID = 7;
/* OLECMDID values:
* 6 - print
* 7 - print preview
* 1 - open window
* 4 - Save As
*/
var PROMPT = 1; // 2 DONTPROMPTUSER
var WebBrowser = '<OBJECT ID="WebBrowser1" WIDTH=0 HEIGHT=0 CLASSID="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></OBJECT>';
document.body.insertAdjacentHTML('beforeEnd', WebBrowser);
WebBrowser1.ExecWB(OLECMDID, PROMPT);
WebBrowser1.outerHTML = "";
}
</script>
</head>
<!-- ///////////////////// ส่วนของ body //////////////////////////// -->
<body>
<table width="2542" height="100" border="1">
<tr>
<td width="200" height="100">
<table width="228" border="1" style="width: 250px">
<tr><td width="84"> Username</td><td width="128"><?php echo $objResult["Username"];?></td></tr>
<tr><td height="23"> Name</td><td><?php echo $objResult["Name"];?></td></tr>
</table>
<a href="edit_profile.php">Edit</a><br />
<a href="logout.php">Logout</a>
</td>
<td width="2326"> </td>
</tr>
</table>
ยังมีอีก แต่หิวข้าวแล้ว ถ้ายังไม่นอนจะมาดูต่อให้
โค๊ดไม่เป็นระเบียบ อ่านยาก เข้าใจยาก แก้ไขยาก นะครับ แม้แต่ตัวเองเขียน ห่างไปซักเดือนกลับมาไม่รู้เรื่องแน่นอน
ประวัติการแก้ไข 2015-11-06 18:14:40
Date :
2015-11-06 17:55:35
By :
NewbiePHP
แล้วทำให้เหลือ 1 row ทำไงหรอครับ ได้แล้วครับ ขอบคุรณครับ
แล้วถ้าจะเอาค่า Sum มาทำงานต่อโดยการนำมาลบ ออก ต้องเขียนยังไงหรอครับ
ประวัติการแก้ไข 2015-11-09 08:22:01
Date :
2015-11-09 08:09:49
By :
pissanu8970
รบกวนถามต่อนะครับ ถ้าต้องการค่า Sum มที่ได้นำมาทำงานต่อ โดยการถูก ลบ ออกต้องเขียนยังไงหรอครับ
Date :
2015-11-09 08:20:41
By :
pissanu8970
Load balance : Server 03