|
|
|
เกี่ยวกับ autonumber จะเพิ่มค่าทุกครั้งที่มีการ refesh |
|
|
|
|
|
|
|
คือผมได้ code autonumber มานะครับ
code
Code (PHP)
<?php
//*** Connect to Database **//
$objConnect = mysql_connect("localhost","root","1234") or die("Error Connect to Database");
$objDB = mysql_select_db("db_helpdesk");
$strNextSeq = "";
//*** Check Year ***//
$strSQL = "SELECT * FROM tb_prefix WHERE 1 ";
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
$objResult = mysql_fetch_array($objQuery);
//*** Check val = year,month now ***//
if($objResult["val"] == date("Y").date("m"))
{
$Seq = substr("00000".$objResult["seq"],-5,5); //*** Replace Zero Fill ***//
$strNextSeq = $objResult["val"].$Seq;
//*** Update Next Seq ***//
$strSQL = "UPDATE tb_prefix SET seq= seq+1 ";
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
}
else //*** Check val != year,month now ***//
{
$Seq = substr("000001",-5,5); //*** Replace Zero Fill ***//
$strNextSeq = date("Y").date("m").$Seq;
//*** Update New Seq ***//
$strSQL = "UPDATE tb_prefix SET val = '".date("Y").date("m")."' , seq = '1' ";
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
}
echo $strNextSeq;
?>
Database
CREATE TABLE `tb_prefix` (
`keyname` varchar(10) NOT NULL,
`val` varchar(10) NOT NULL,
`seq` int(4) NOT NULL,
PRIMARY KEY (`keyname`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
INSERT INTO `tb_prefix` VALUES ('year', '201203', '01');
ปัญหาที่ผมเจอ คือทุกครั้งที่มีการ refresh ตัว เลขก็จะเพิ่มจำนวนขึ้น หรือ ถ้าทำการเช็คค่าก่อนจะ ใส่ลงให้ฐานข้อมูลแล้วกลับมาหน้าเก่า
ตัวเลขก็จะเพิ่มขึ้นเช่นกัน พอมีวิธีไม่ให้มีการเพิ่มค่าหรือไม่ครับ เพราะว่าไม่งั้น ตัวเลขจะไม่ run ต่อเนื่องกัน
Tag : PHP, MySQL
|
|
|
|
|
|
Date :
2012-03-26 14:38:39 |
By :
rawat2006 |
View :
982 |
Reply :
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เวลา save เสร็จก็ให้ redirect ไปหน้าอื่นน่ะครับ จะได้กด Refresh ไม่ได้ครับ หรือไม่ก็ใช้ session ชวยครับ โดยในกรณีที่ทำแล้วก็ให้สร้าง session ขึ้นมา 1 ตัวเก็บสถาน่ะ
|
|
|
|
|
Date :
2012-03-26 16:11:54 |
By :
webmaster |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 00
|