|
|
|
ต้องการอัพเดทการประเมินโดยตรวจสอบจากรหัสนักศึกษา รหัสวิชา และรหัสอาจารย์ ถ้าตรวจสอบว่าซ้ำกันก็ให้ทำการอัพเดท แต่ถ้าไม่ซ้ำกันก็ให้อินเซิร์ทลงฐานข้อมูลเลย |
|
|
|
|
|
|
|
ต้องการอัพเดทการประเมินโดยตรวจสอบจากรหัสนักศึกษา รหัสวิชา และรหัสอาจารย์ ถ้าตรวจสอบว่าซ้ำกันก็ให้ทำการอัพเดท แต่ถ้าไม่ซ้ำกันก็ให้อินเซิร์ทลงฐานข้อมูลเลย
นี่เป็นโค้ดที่อินเซิร์ทได้อย่างเดียวตอนนี้ค่ะ
Code (PHP)
<?php
//$dis_time = date("Y-m-d H:i:s");
//date("Y-m-d");
//echo $dd;
//echo "ข้อมูลที่คุณเลือก : ".$q_no;
include ("connect_db.php");
for($i=1;$i<=(int)$_POST["line"];$i++)
{
//echo $_POST["q_no".$i];
//echo $_POST["line".$i];
//echo "<br>";
$str = "INSERT INTO EV_ANSWER";
$str .="(\"STUDENTCODE\",\"OFFICERID\",\"COUSECODE\",\"TQF_ID\",\"CHOICEID\",\"CLASSID\")";
$str .="VALUES ";
$str .="('".$_GET["student_code"]."','".$_GET["OFFICERID"]."', '".$_GET["COURSECODE"]."','".$_POST["id".$i]."','".$_POST["q_no".$i]."','".$_POST["CLASSID"]."')";
$objParse = oci_parse($objConnect,$str);
$objExecute = oci_execute($objParse,OCI_DEFAULT);
}
include ("connect_db.php");
$strSQL = "INSERT INTO EV_COMMENT ";
$strSQL .="(\"COMMENTEXT\",\"OFFICERID\",\"STUDENTCODE\",\"COURSECODE\",\"CLASSID\") ";
$strSQL .="VALUES ";
$strSQL .="('".$_POST["COMMENT"]."','".$_GET["OFFICERID"]."', '".$_GET["student_code"]."','".$_GET["COURSECODE"]."','".$_POST["CLASSID"]."')";
$objParse = oci_parse($objConnect, $strSQL);
$objExecute = oci_execute($objParse, OCI_DEFAULT);
if($objExecute)
{
oci_commit($objConnect);
echo"<body onload=\"window.alert(' บันทึกการประเมิน..');return history.go(-2)\">";
}
else
{
oci_rollback($objConnect); //*** RollBack Transaction ***//
echo "Error Save [".$strSQL."";
echo"<body onload=\"window.alert(' เกิดข้อผิดพลาด..!!');return history.go(-1)\">";
}
oci_close($objConnect);
?>
Tag : PHP, Oracle
|
|
|
|
|
|
Date :
2012-06-21 20:54:19 |
By :
comerror |
View :
1176 |
Reply :
7 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ให้ select เพื่อเชคค่าซ้ำก่อนครับ ถ้าไม่ซ้ำก็ให้ใส่โค้ด insert into ถ้าซ้ำก็เลือก id มันมาแล้วใส่โค้ด update ตาม id ที่ select มา ครับ
|
|
|
|
|
Date :
2012-06-21 23:07:39 |
By :
deawx |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอคำแนะนำด้วยค่ะ ทำไมมันอัพเดทข้อเดียวค่ะ
จากโค้ดนี้ค่ะ
Code (PHP)
<?php
include ("connect_db.php");
$strSQL = "SELECT * FROM EV_ANSWER WHERE STUDENTCODE = '".$_GET["student_code"]."' and OFFICERID = '".$_GET["OFFICERID"]."' and COURSECODE = '".$_GET["COURSECODE"]."'";
$objParse = oci_parse ($objConnect, $strSQL);
oci_execute ($objParse,OCI_DEFAULT);
$objResult = oci_fetch_array($objParse);
if($objResult)
{
for($i=1;$i<=(int)$_POST["line"];$i++)
{
$strSQL = "update EV_ANSWER set CHOICEID = '".$_POST["q_no".$i]."', TQF_ID ='".$_POST["id".$i]."' where STUDENTCODE = '".$_GET["student_code"]."' and OFFICERID = '".$_GET["OFFICERID"]."' and COURSECODE = '".$_GET["COURSECODE"]."' ";
$objParse = oci_parse ($objConnect, $strSQL);
oci_execute($objParse);
if($objResult)
{
echo"<body onload=\"window.alert(' แก้ไขการประเมินเรียบร้อยแล้ว..');return history.go(-2)\">";
}}}
else
{
for($i=1;$i<=(int)$_POST["line"];$i++)
{
//echo $_POST["q_no".$i];
//echo $_POST["line".$i];
//echo "<br>";
$str = "INSERT INTO EV_ANSWER";
$str .="(\"STUDENTCODE\",\"OFFICERID\",\"COURSECODE\",\"TQF_ID\",\"CHOICEID\",\"CLASSID\",\"STATUS\")";
$str .="VALUES ";
$str .="('".$_GET["student_code"]."','".$_GET["OFFICERID"]."','".$_GET["COURSECODE"]."','".$_POST["id".$i]."','".$_POST["q_no".$i]."','".$_POST["CLASSID"]."','".$_GET["STATUS"]."')";
$objParse = oci_parse($objConnect,$str);
$objExecute = oci_execute($objParse,OCI_DEFAULT);
}
include ("connect_db.php");
$strSQL = "INSERT INTO EV_COMMENT ";
$strSQL .="(\"COMMENTEXT\",\"OFFICERID\",\"STUDENTCODE\",\"COURSECODE\",\"CLASSID\") ";
$strSQL .="VALUES ";
$strSQL .="('".$_POST["COMMENT"]."','".$_GET["OFFICERID"]."','".$_GET["student_code"]."','".$_GET["COURSECODE"]."','".$_POST["CLASSID"]."')";
$objParse = oci_parse($objConnect, $strSQL);
$objExecute = oci_execute($objParse, OCI_DEFAULT);
if($objExecute)
{
oci_commit($objConnect);
echo"<body onload=\"window.alert(' บันทึกการประเมิน..');return history.go(-2)\">";
}
else
{
oci_rollback($objConnect); //*** RollBack Transaction ***//
echo "Error Save [".$strSQL."";
echo"<body onload=\"window.alert(' เกิดข้อผิดพลาด..!!');return history.go(-1)\">";
}
}
oci_close($objConnect);
?>
ไม่มี error เลยค่ะ
|
|
|
|
|
Date :
2012-06-26 23:41:58 |
By :
comerror |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
มันเข้าเงื่อนไขตัวเดียว ก็เลย update แต่ตัวเดียวครับ
|
|
|
|
|
Date :
2012-06-27 06:25:58 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลอง echo $str; ออกมาดู ข้อมูลก็ครบน่ะค่ะ
|
|
|
|
|
Date :
2012-06-27 19:47:01 |
By :
comerror |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ใช่แบบนี้หรือป่าวค่ะ
Code (PHP)
include ("connect_db.php");
$strSQL = "SELECT * FROM EV_ANSWER WHERE STUDENTCODE = '".$_GET["student_code"]."' and OFFICERID = '".$_GET["OFFICERID"]."' and COURSECODE = '".$_GET["COURSECODE"]."'";
$objParse = oci_parse ($objConnect, $strSQL);
oci_execute ($objParse,OCI_DEFAULT);
$objNum_row = oci_num_rows($objParse);
if($objNum_row>0){ // กรณีซ้ำ
{
for($i=1;$i<=(int)$_POST["line"];$i++)
{
$strSQL = "update EV_ANSWER set CHOICEID = '".$_POST["q_no".$i]."',TQF_ID ='".$_POST["id".$i]."' where STUDENTCODE = '".$_GET["student_code"]."' and OFFICERID = '".$_GET["OFFICERID"]."' and COURSECODE = '".$_GET["COURSECODE"]."' ";
//$objParse = oci_parse ($objConnect, $strSQL);
//oci_execute ($objParse,OCI_DEFAULT);
echo $strSQL;
if($objNum_row>0)
{
echo"<body onload=\"window.alert(' แก้ไขการประเมินเรียบร้อยแล้ว..');return history.go(-2)\">";
}
}
}
}else{ // กรณีไม่ซ้ำ
ถ้าแบบนี้มันไม่อัพเดทค่ะ แต่มันเพิ่มเข้าไปในฐานข้อมูลเลยค่ะ
|
ประวัติการแก้ไข 2012-06-27 20:09:56 2012-06-27 20:10:04 2012-06-27 20:10:09
|
|
|
|
Date :
2012-06-27 20:07:24 |
By :
comerror |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 02
|