การคำนวนเปอร์เซ็นต์

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

การคำนวนเปอร์เซ็นต์
       ต้องการคำนวนหาค่าเป็นเปอร์เซ็นต์ ลองมั่วดูไม่ผ่านครับ
รบกวนช่วยเเก้ไขไห้ด้วยครับ

$strSQL .=",peratus01 = ('".$_POST["txtal_jumlah01$i"]."'*100)/1400";


Azhary Pk 110.78.146.xxx 21-09-2016 07:27:43

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

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


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


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

 ความคิดเห็นที่ 1


ninenik 180.183.12.xxx 21-09-2016
 ความคิดเห็นที่ 2
ประมาณนี้ครับ



ไม่ทราบว่าอย่างไหนดี (เร็ว ไม่หนักโฮสต) ระหว่าง สร้างคอลั้ม percent ในฐานข้อมูล  เเล้วสร้างสูตรตอนอัปเดต บันทึกลงคอลั้ม percent ในฐานข้อมูล
กับ ไม่สร้างคอลั้ม percent ในฐานข้อมูล เเต่มาคำนวนตอนเเสดงข้อมูล คือ สร้าง td  ชืี่อ percent  เเล้วสร้างสูตรคำนวนทุกครั้งที่เปิดไฟล์

เเบบที่ 1 update.php

สูตรที่มั่วมาประมาณนี้ครับ (รบกวนช่วยเเก้ไขด้วยครับ)

<?php
    include('config.inc.php');

//*** Update Condition ***//
if($_GET["Action"]=='Save'){
$action =$_GET["Action"];
}else{
$action ='';
}
if($action == "Save")
{
    for($i=1;$i<=$_POST["hdnLine"];$i++)
    {
        $strSQL = "UPDATE score SET ";
        $strSQL .="SID = '".$_POST["txtSID$i"]."' ";
       
        $strSQL .=",score1 = '".$_POST["txtscore1$i"]."' ";
        $strSQL .=",score2 = '".$_POST["txtscore2$i"]."' ";
        $strSQL .=",score3 = '".$_POST["txtscore3$i"]."' ";
        $strSQL .=",sum ='".$_POST["txtscore1$i"]."'+'".$_POST["txtscore2$i"]."'+'".$_POST["txtscore3$i"]."' ";
$strSQL .=",peratus01 = ('".$_POST["txtal_jumlah01$i"]."'*100)/300";    มีปัญหาตรงบรรทัดนี้ครับ
         
        $strSQL .="WHERE SID = '".$_POST["hdnSID$i"]."' ";
        $objQuery = mysql_query($strSQL);
    }
    //header("location:$_SERVER[PHP_SELF]");
    //exit();
}

?>


เเบบที่ 2     score.php

สูตรที่มั่วมาประมาณนี้ครับ (รบกวนช่วยเเก้ไขด้วยครับ)

        <?php
   include('config.inc.php');

$strSQL ="SELECT std.SID,std.name,std.susname,std.class,score.score1,score.score2,score.score3,score.sum
                 FROM std INNER JOIN score
                 ON std.SID = score.SID
                WHERE class = '".$_GET["class"]."'
                 ORDER BY SID";
                 
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
?>

                <table  border="1">
                    <thead>            
                        <tr>
   <th width="15" HEIGHT="45" bgcolor="#D9D9D9" ><FONT   FACE="traditional arabic"  FONT SIZE=3><b> <div align="center">No.</div></font></th>
   <th width="45" bgcolor="#D9D9D9" ><FONT   FACE="traditional arabic"  FONT SIZE=4><b> <div align="center">name</div></font></th>
   <th width="115" bgcolor="#D9D9D9" ><FONT   FACE="traditional arabic"  FONT SIZE=4><b> <div align="center">surname</div></font></th>
   <th width="115" bgcolor="#D9D9D9" ><FONT   FACE="traditional arabic"  FONT SIZE=4><b> <div align="center">score1</div></font></th>

       <th width="" bgcolor="" > <FONT   FACE="traditional arabic"  FONT SIZE=4><b><div align="center" >score2</div></font></th>
              <th width="" bgcolor="" > <FONT   FACE="traditional arabic"  FONT SIZE=4><b><div align="center" >score3</div></font></th>
                     <th width="" bgcolor="" > <FONT   FACE="traditional arabic"  FONT SIZE=4><b><div align="center" >sum</div></font></th>
                            <th width="" bgcolor="" > <FONT   FACE="traditional arabic"  FONT SIZE=4><b><div align="center" >percent</div></font></th>
                                                    
                        </tr>
                    </thead>
<?php
$i =0;
while($objResult = mysql_fetch_array($objQuery))
{
    $i = $i + 1;
?>
                    <tbody>
                        <tr>

<td><div align="center"><?php echo $objResult["SID"];?></div></td>
<td><div align="center"><?php echo $objResult["name"];?></div></td>
<td><div align="center"><?php echo $objResult["surname"];?></div></td>
<td><div align="center"><?php echo $objResult["score1"];?></div></td>
<td><div align="center"><?php echo $objResult["score2"];?></div></td>
<td><div align="center"><?php echo $objResult["score3"];?></div></td>
<td><div align="center"><?php echo $objResult["sum"];?></div></td>
<td><div align="center">(<?php echo $objResult["percent"];?>*100)/300</div></td>    มีปัญหาตรงบรรทัดนี้ครับ
                           
                        </tr>

<?php
}
?>
                       
                    </tbody>
                </table>


Azhary Pk 110.78.146.xxx 21-09-2016 11:29
 ความคิดเห็นที่ 3
แนะนำให้ดึงค่ามาคำนวณด้วย php ดีกว่า ลดการทำงานของ mysql
 
แต่บรรทัดนี้เขียนโค้ดได้แปลกมาก
 
<td><div align="center">(<?php echo $objResult["percent"];?>*100)/300</div></td>    มีปัญหาตรงบรรทัดนี้ครับ
 
น่าจะเป็นแบบนี้ไหม
 
<td><div align="center"><?=(($objResult["percent"]*100)/300)?></div></td>   
 
หรือ
 
<td><div align="center">(<?php  echo ($objResult["percent"]*100)/300; ?></div></td>  


ninenik 180.183.12.xxx 21-09-2016
 ความคิดเห็นที่ 4


ได้เเล้วค้าบปม


Azhary Pk 110.78.146.xxx 21-09-2016 12:15
 ความคิดเห็นที่ 5
เพิ่มเติมอีกหน่อยครับ

จากโค้ดด้านล่าง ถ้าหากจะตัดทศนิยมให้เหลือสองตัว ต้องเพิ่มเติมส่วนไหนครับ

<td><div align="center"><?=(($objResult["percent"]*100)/300)?></div></td>   

<td><div align="center"><?php  echo ($objResult["percent"]*100)/300; ?></div></td>  

ขอบพระคุณอย่างสูง


Azhary Pk 110.78.146.xxx 21-09-2016 16:10
 ความคิดเห็นที่ 6
ได้เเล้วครับ

<td><div align="center"><?php  echo 
number_format(($objResult["percent"]*100)/300,2); ?></div></td>



Azhary Pk 110.78.146.xxx 21-09-2016 16:22
 ความคิดเห็นที่ 7
โค้ดอีกตัว

<td><div align="center"><?=
number_format(($objResult["percent"]*100)/300,2)?></div></td>



Azhary Pk 110.78.146.xxx 21-09-2016 16:28
1






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