พอดีว่าอ่านเจอกระทู้ การนำ jQuery มาทำ AutoFill ข้อมูล Textbox และการตรวจสอบข้อมูลซ้ำด้วย Ajax เลยสงสัยว่าถ้าจะให้คีย์ข้อมูลที่ไม่ซ้ำกันกัน
จะยากอะไร
=========================
กัน Duplicate ก็ php num_rows หรือ Auto Number
Date :
2018-11-06 13:28:00
By :
Hararock
ลองสร้าง unique key มากำกับ ดูครับ
yyyymm + id
Date :
2018-11-06 20:30:14
By :
Chaidhanan
ทำอะไรไปบ้างครับ และจะ insert หรือ update อะไร บอกสั้นๆ เดาไม่ถูกครับ
เพราะถ้าใช้ if else ตรวตสอบแล้ว query ตามลำดับก็ควรจะได้แล้ว
Date :
2018-11-07 18:18:37
By :
Chaidhanan
Code (PHP)
เพิ่มข้อมูล
total
tid,tcode,tprice,tpro,tunit,tqty,tdate,tname,tsave,tupdate,tstatus
qty
tid,tcode,tprice,tunit,tqty,tdate,tname,tstatus
อัพเดท
qty
tid,tcode,tprice,tunit,tqty,tdate,tname,tstatus
Date :
2018-11-08 05:30:35
By :
HLEW
พอดีพึ่งกลับจากต่างจังหวัดครับ
จากโค้ดผมเขียนถูกต้องไหมครับ เงื่อนไขตอน WHERE คือ tcode กับ tdate
Code (SQL)
CREATE TABLE `total` (
`tid` int(11) NOT NULL,
`tcode` varchar(13) NOT NULL,
`tprice` float NOT NULL,
`tpro` float NOT NULL,
`tunit` int(11) NOT NULL,
`tqty` float NOT NULL,
`tdate` date NOT NULL,
`tname` varchar(50) NOT NULL,
`tsave` varchar(50) NOT NULL,
`tupdate` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
`tstatus` varchar(10) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `qty` (
`tid` int(11) NOT NULL,
`tcode` varchar(13) NOT NULL,
`tprice` float NOT NULL,
`tpro` float NOT NULL,
`tunit` int(11) NOT NULL,
`tqty` float NOT NULL,
`tdate` date NOT NULL,
`tname` varchar(50) NOT NULL,
`tsave` varchar(50) NOT NULL,
`tupdate` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
`tstatus` varchar(10) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
Code (PHP)
include('condb.ua.php');
$strSQL = "SELECT * FROM total WHERE tcode = '".$_POST["tcode"]."' AND MONTH(tdate)= MONTH(NOW()) ";
$objQuery = mysql_query($strSQL);
$objResult = mysql_fetch_array($objQuery);
if($tcode > 0)
{
$strSQL = "UPDATE total SET ";
//$strSQL .="tid = '".$_POST["tid"]."' ";
$strSQL .="tcode = '".$_POST["tcode"]."' ";
$strSQL .=",tprice = '".$_POST["tprice"]."' ";
$strSQL .=",tpro = '".$_POST["tpro"]."' ";
$strSQL .=",tunit = '".$_POST["tunit"]."' ";
$strSQL .=",tqty = '".$_POST["tqty"]."' ";
$strSQL .=",tdate = '".$_POST["tdate"]."' ";
$strSQL .=",tname = '".$_POST["tname"]."' ";
$strSQL .=",tsave = '".$_POST["tsave"]."' ";
$strSQL .=",tupdate = '".$_POST["tupdate"]."' ";
$strSQL .=",tstatus = '".$_POST["tstatus"]."' ";
$strSQL .="WHERE tcode = '".$_POST["tcode"]."' ";
$objQuery = mysql_query($strSQL)or die ("Error in query[".$strSQL."]");
$strSQL2 = "UPDATE qty SET ";
//$strSQL2 .="tid = '".$_POST["tid"]."' ";
$strSQL2 .="tcode = '".$_POST["tcode"]."' ";
$strSQL2 .=",tprice = '".$_POST["tprice"]."' ";
$strSQL2 .=",tpro = '".$_POST["tpro"]."' ";
$strSQL2 .=",tunit = '".$_POST["tunit"]."' ";
$strSQL2 .=",tqty = '".$_POST["tqty"]."' ";
$strSQL2 .=",tdate = '".$_POST["tdate"]."' ";
$strSQL2 .=",tname = '".$_POST["tname"]."' ";
$strSQL2 .=",tsave = '".$_POST["tsave"]."' ";
$strSQL2 .=",tupdate = '".$_POST["tupdate"]."' ";
$strSQL2 .=",tstatus = '".$_POST["tstatus"]."' ";
$strSQL2 .="WHERE tcode = '".$_POST["tcode"]."' ";
$objQuery2 = mysql_query($strSQL2)or die ("Error in query[".$strSQL2."]");
}
else
{
$strSQL = "INSERT INTO total SET ";
$strSQL .="(tcode,tpro,tprice,tunit,tqty,tdate,tname,tsave,tupdate,tstatus) ";
$strSQL .="VALUES ";
$strSQL .="('".$_POST["tcode"]."','".$_POST["tpro"]."','".$_POST["tprice"]."','".$_POST["tunit"]."','".$_POST["tqty"]."','".$_POST["tdate"]."','".$_POST["tname"]."','".$_POST["tsave"]."','".$_POST["tupdate"]."','".$_POST["tstatus"]."' ";
$objQuery = mysql_query($strSQL)or die ("Error in query[".$strSQL."]");
$strSQL2 = "INSERT INTO qty SET ";
$strSQL2 .="(tcode,tpro,tprice,tunit,tqty,tdate,tname,tsave,tupdate,tstatus) ";
$strSQL2 .="VALUES ";
$strSQL2 .="('".$_POST["tcode"]."','".$_POST["tpro"]."','".$_POST["tprice"]."','".$_POST["tunit"]."','".$_POST["tqty"]."','".$_POST["tdate"]."','".$_POST["tname"]."','".$_POST["tsave"]."','".$_POST["tupdate"]."','".$_POST["tstatus"]."' ";
$objQuery2 = mysql_query($strSQL2)or die ("Error in query[".$strSQL2."]");
}
ประวัติการแก้ไข 2018-11-13 12:54:54
Date :
2018-11-13 12:37:57
By :
HLEW
$tcode มาจากไหนครับ ต้องเขียนเต็มๆ นะครับ หรือว่าแปลงมาแล้ว
Code (PHP)
$tcode = isset($_POST['tcode']) ? $_POST['tcode']*1 : 0;
$strSQL = 'SELECT * FROM total WHERE tcode = '.$tcode.' AND MONTH(tdate)= MONTH(NOW())';
Date :
2018-11-13 13:05:02
By :
Chaidhanan
ดูจาก Code น่าจะถูกหมด
=================
แนะนำให้เขียน Mysqli , OOP Or PDO
ได้แล้วน่ะครับ
=================
และ การเขียน Code ดูๆมันจะงง และ อาจมีข้อผิดพลาดเยอะ เพราะ เขียน String ต่อ String
=================
แต่ว่า
Code (PHP)
if($tcode > 0){
}
ไม่ถูกหลักการ น่าจะใช้
Code (PHP)
$tcodess = mysql_num_rows($objQuery);
if($tcodess > 0){
}
แบบนี้น่าจะถูก
Date :
2018-11-13 14:01:24
By :
Hararock
Load balance : Server 03