|
|
|
ติดปัญหาการบันทึกข้อมูลลงฐานข้อมูล แล้วข้อมูลไม่ครบ เช่นเวลาคีย์ข้อมูลใน textbox เป็น 25,000.00 ผลลัพธ์ในฐานข้อมูล เป็น25 มีท่านผู้รู้แนะนำมาโดยให้เครียร์ค่าของ |
|
|
|
|
|
|
|
ติดปัญหาการบันทึกข้อมูลลงฐานข้อมูล แล้วข้อมูลไม่ครบ เช่นเวลาคีย์ข้อมูลใน textbox เป็น 25,000.00 ผลลัพธ์ในฐานข้อมูล เป็น25 มีท่านผู้รู้แนะนำมาโดยให้เครียร์ค่าของ เครื่องหมายคอมม่าออกก่อนแล้วค่อยบันทึกแต่ไม่รู้จะแทรกยังไง ซึ่งผมได้แนบcodeมารบกวนด้วยครับ..
Code (PHP)
//ฟังชั่น format เงิน
function formatCurrency(num) {
num = num.toString().replace(/\$|\,/g,'');
if(isNaN(num))
num = "0";
sign = (num == (num = Math.abs(num)));
num = Math.floor(num*100+0.50000000001);
cents = num%100;
num = Math.floor(num/100).toString();
if(cents<10)
cents = "0" + cents;
for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
num = num.substring(0,num.length-(4*i+3))+','+
num.substring(num.length-(4*i+3));
return (((sign)?'':'-') + num + '.' + cents);
} //end function
//ฟังชั่นเปลี่ยนจากค่าเงิน เป็นตัวเลข
function clearMoneyComma(str) {
return str.replace(/,/g,"");
}
function chk_SumCash(){
var txt1=document.form1.txt_CashReceive.value.split(',').join('');
var txt2=document.form1.txt_CashPay.value.split(',').join('');
var txt3=document.form1.txt_CashPayMany.value.split(',').join('');
var txt4=document.form1.txt_Other.value.split(',').join('');
var conv1 = parseFloat(txt1);
var conv2 = parseFloat(txt2);
var conv3 = parseFloat(txt3);
var conv4 = parseFloat(txt4);
document.form1.txt_SumCash.value=conv1+conv2+conv3+conv4; //---- 1 ---- /
} //end function
<input type="text" name="txt_SumCash" id="txt_SumCash" class="Bg_readOnly" value="0.00" style="width:50%;text-align:right" onkeydown="return nextbox(event, 'txt_ReceiveSale');" onKeyUp="if(event.keyCode == 13){this.value=formatCurrency(this.value);};" onBlur="this.value=formatCurrency(this.value);" readonly>
Tag : PHP, MySQL
|
|
|
|
|
|
Date :
2012-12-31 10:40:36 |
By :
worawit |
View :
1041 |
Reply :
4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ตั้งค่าฟิลด์ type เป็นอะไร แล้วโค้ดการเก็บ เราเขียนแบบใหน เอามาด้วยดีก่ว่าครับ จะได้ช่วยดูให้
|
|
|
|
|
Date :
2012-12-31 13:12:17 |
By :
deawx |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ชนิดของข้อมูลเป็น double(20,2) ส่วน Code ตามนี้เลยครับ ขอขอบคุณล่วงหน้านะครับ..
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>บันข้อมูล</title>
</head>
<body>
<?
$con_db = mysql_connect("localhost","root","root");
if (!$con_db)
{
die('ไม่สามารถเชื่อมต่อได้' . mysql_error());
}
mysql_query('SET NAMES utf8');
mysql_select_db("accountcenter", $con_db);
$sql="INSERT INTO tbl_cashflows (CashReceive, CashPay, CashPayMany, Other, SumCash, ReceiveSale, PayEquip, PayAssets, PayOther, SumInvest, LoanBank, LoanGroup, PayLoan, PayDividend, SumSupplyCash, CashMonthly, CashBegin, EndPeriod, Deposit, PayCredit, RemainBank, NetTotal, WhenUpdate, Time, Month, Year)
VALUES
('$_POST[txt_CashReceive]','$_POST[txt_CashPay]','$_POST[txt_CashPayMany]','$_POST[txt_Other]','$_POST[txt_SumCash]','$_POST[txt_ReceiveSale]','$_POST[txt_PayEquip]','$_POST[txt_PayAssets]','$_POST[txt_PayOther]','$_POST[txt_SumInvest]','$_POST[txt_LoanBank]','$_POST[txt_LoanGroup]','$_POST[txt_PayLoan]','$_POST[txt_PayDividend]','$_POST[txt_SumSupplyCash]','$_POST[txt_CashMonthly]','$_POST[txt_CashBegin]','$_POST[txt_EndPeriod]','$_POST[txt_Deposit]','$_POST[txt_PayCredit]','$_POST[txt_RemainBank]','$_POST[txt_NetTotal]',CURDATE(),CURTIME(),'$_POST[sel_comp1]','$_POST[sel_comp2]')";
if (!mysql_query($sql,$con_db))
{
die('บันทึกข้อมูลไม่ได้ ' . mysql_error());
}
echo "บันทึกข้อมูล เรียบร้อยแล้ว..<a href=\"cash_flows.php\"><br><font color=\"red\">กลับไปหน้าเมนู</a></font>";
mysql_close($con_db)
?>
</body>
</html>
|
|
|
|
|
Date :
2012-12-31 14:21:07 |
By :
worawit |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ไม่รู้ว่าได้ หรือเปล่านะครับ
ลอง บันทึกค่าลงฐานข้อมูลไปก่อนไม่ต้องใส่คอมม่า
แต่ตอนสแดงให้ใส่ ฟังก์ชันนี้ครอบไปครับ
ตัวอย่างนะครับ
<?
$number=1568971;
echo "สั่งสินค้าเป็นจำนวนเงิน = ".number_format($number,2,'.',',')." บาท"; //2
ที่เราเขียนเป็นการระบุจุดทศนิยม
?>
ผลลัพธ์
|
ประวัติการแก้ไข 2012-12-31 14:39:22 2012-12-31 14:45:20
|
|
|
|
Date :
2012-12-31 14:38:17 |
By :
JindaCpe8 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
code ในการเก็บค่าใน textbox
//ฟังค์ชั่นผลรวมของ textbox
function chk_SumCash(){
var txt1=document.form1.txt_CashReceive.value.split(',').join(''); //---- textbox 1 ---- /
var txt2=document.form1.txt_CashPay.value.split(',').join(''); //---- textbox 2 ---- /
var txt3=document.form1.txt_CashPayMany.value.split(',').join(''); //---- textbox 3 ---- /
var txt4=document.form1.txt_Other.value.split(',').join(''); //---- textbox 4 ---- /
var conv1 = parseFloat(txt1);
var conv2 = parseFloat(txt2);
var conv3 = parseFloat(txt3);
var conv4 = parseFloat(txt4);
document.form1.txt_SumCash.value=conv1+conv2+conv3+conv4; //---- textbox 5 เป็นผลรวมของ textbox ของ textbox 1-4 ---- /
} //end function
//input textbox 5 เป็นผลรวมของ textbox ของ textbox 1-4
<input type="text" name="txt_SumCash" id="txt_SumCash" class="Bg_readOnly" value="0.00" style="width:50%;text-align:right" onkeydown="return nextbox(event, 'txt_ReceiveSale');" onKeyUp="if(event.keyCode == 13){this.value=formatCurrency(this.value);};" onBlur="this.value=formatCurrency(this.value);" readonly>
.................................
//input ของ textbox 1-4
<input type="text" name="txt_ReceiveSale" id="txt_ReceiveSale" value="0.00" style="width:50%;text-align:right" onkeydown="return nextbox(event, 'txt_PayEquip');" onKeyUp="if(event.keyCode == 13){this.value=formatCurrency(this.value);}chk_SumCash();" onkeypress="check_number();" onFocus="this.value=clearMoneyComma(this.value);" onBlur="this.value=formatCurrency(this.value);">
|
|
|
|
|
Date :
2013-01-01 10:57:43 |
By :
worawit |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 00
|