ต้องการทราบวิธีการ insert พร้อม update ว่าต้องใช้โค้ดยังไง ขอคำแนะนำด้วยค่ะ
ไป select STUDENTID จากตารางที่ทำแบบประเมิน
SELECT STUDENTID FROM tablexxx WHERE STUDENTID = '$STUDENTID'
$total = mysql_num_rows
แล้วเขียน IF ELSE เช็ค
if ($total > 0) {//ทำแบบประเมินไปแล้ว ให้ update
code sql update
}
else
{//ยังไม่ทำแบบประเมิน
code sql insert
}
Date :
2012-05-20 15:23:02
By :
avsqlz
Code (PHP)
$StudenId=$_GET['StudenId'];
$Result=mysql_query("SELECT * FROM tb_Student WHERE StudenId='".$StudenId."'") or die (mysql_error());
$Num_Rows=mysql_num_rows($Result);
if($Num_Rows == 0){
echo "INSERT";
}else{
echo "Update";
}
Date :
2012-05-20 16:19:48
By :
Ex-[S]i[L]e[N]t
หน้าฟอร์มที่ส่งค่ารายวิชามาเพื่อดึงข้อคำถามจากฐานข้อมูล
Code (PHP)
<?
include ("connect_db.php");
$strSQL = "SELECT DISTINCT
EVALUATE.VV.STUDENTCODE,
AVSREG.STUDENTMASTER.STUDENTID,
AVSREG.STUDENTMASTER.PROGRAMID,
AVSREG.PROGRAM.PROGRAMNAME,
EVALUATE.VV.ACADYEAR,
EVALUATE.VV.SEMESTER,
EVALUATE.VV.OFFICERID,
EVALUATE.VV.STUDENTID,
EVALUATE.VV.OFFICERNAME,
EVALUATE.VV.OFFICERSURNAME,
EVALUATE.VV.COURSENAME,
EVALUATE.VV.CAMPUSID,
EVALUATE.VV.COURSECODE
FROM
EVALUATE.VV
Inner Join AVSREG.STUDENTMASTER ON EVALUATE.VV.STUDENTID = AVSREG.STUDENTMASTER.STUDENTID
Inner Join AVSREG.PROGRAM ON AVSREG.PROGRAM.PROGRAMID = AVSREG.STUDENTMASTER.PROGRAMID
WHERE
EVALUATE.VV.STUDENTCODE = '$student_code'
ORDER BY EVALUATE.VV.ACADYEAR,EVALUATE.VV.SEMESTER DESC ";
$objParse = oci_parse ($objConnect, $strSQL);
oci_execute ($objParse,OCI_DEFAULT);
?>
<span class="style8"><font color="#FF0000">รายวิชาที่นักศึกษาต้องทำแบบประเมินอาจารย์ผู้สอน</font></span></p>
<table width="800" border="0" align="center" cellpadding="1" cellspacing="1" bordercolor="#FFFFFF" bgcolor="#FFFFFF">
<tr>
<th width="100" height="40" align="center" valign="middle" bgcolor="#FFCCFF"><span class="style7 style4 style8">รหัสวิชา</span></th>
<th width="263" height="40" align="center" valign="middle" bgcolor="#FFCCFF"> <div align="center" class="style7 style4 style8">รายวิชา</div></th>
<th width="237" height="40" align="center" valign="middle" bgcolor="#FFCCFF"> <div align="center" class="style7 style4 style8">อาจารย์ผู้สอน</div></th>
<th width="150" height="40" align="center" valign="middle" bgcolor="#FFCCFF"> <div align="center" class="style7 style4 style8">ประเมิน</div></th>
</tr>
<?
while($objResult = oci_fetch_array($objParse,OCI_BOTH))
{ $i++;
if($i%2==0)
{
$bg = "#DDDDDD";
}
else
{
$bg = "#EEEEEE";
}
?>
<tr bgcolor="<?=$bg?>">
<td width="100" height="30" align="center" valign="middle"><div align="center" class="style9 style4">
<?=$objResult["COURSECODE"];?>
</div></td>
<td width="263" height="30" align="center" valign="middle"><div align="center" class="style10 style4">
<div align="left"><strong>
<label></label>
<?=$objResult["COURSENAME"];?>
</strong> </div>
</div></td>
<td width="237" height="30" align="left" valign="middle"><div align="left" class="style10 style4"> <strong> อาจารย์
<?=$objResult["OFFICERNAME"];?>
</strong> <strong>
<?=$objResult["OFFICERSURNAME"];?>
</strong> </div></td>
<td width="150" height="30" align="center" valign="middle"><span class="style11"><a href="ASSESS.php?COURSECODE=<?=$objResult["COURSECODE"];?>&OFFICERID=<?=$objResult["OFFICERID"];?>&student_code=<?=$_SESSION["student_code"]; ?>&program=<?=$_SESSION["program"]; ?>&OFFICERNAME=<?=$objResult["OFFICERNAME"];?>&OFFICERSURNAME=<?=$objResult["OFFICERSURNAME"];?>&COURSENAME=<?=$objResult["COURSENAME"];?>" title="ประเมินอาจารย์" class="style4" style="text-decoration:none">
<input type="image" name="imageField22" src="image/book.png" width="30" height="30" title="ประเมินอาจารย์"/>ประเมินอาจารย์</a></span><span class="style10">
<?=$objResult["COUNTRYCODE"];?>
</font>
</div>
</span></td>
</tr>
<?
}
?>
</table>
<?
oci_close($objConnect);
?>
โค้ดหน้าฟอร์มแบบประเมิน
Code (PHP)
<body>
<script language="JavaScript">
function fncSubmit()
{
var Rows = document.ASSESS.hdnRows.value;
for(x=1;x<=Rows;x++)
{
var id1 = document.getElementById("id"+x+"_1");
var id2 = document.getElementById("id"+x+"_2");
var id3 = document.getElementById("id"+x+"_3");
var id4 = document.getElementById("id"+x+"_4");
var id5 = document.getElementById("id"+x+"_5");
if(id1.checked == false && id2.checked == false && id3.checked == false && id4.checked == false && id5.checked == false)
{
alert('คุณยังไม่ได้ตอบคำถามข้อที่' + x);
return false;
}
}
}
</script>
<tr>
<td width="39" rowspan="2" align="center"><?php if(empty($_POST)){ ?></td>
</tr><tr><td> </td>
</tr>
<tr>
<form name="ASSESS" action="ack.php?COURSECODE=<?=$COURSECODE?>&OFFICERID=<?=$OFFICERID;?>&student_code=<?=$_SESSION["student_code"];?>&program=<?=$_SESSION["program"];?>" method="post" onSubmit="return fncSubmit();">
<div align="center">
<?
include ("connect_db.php");
$strSQL = "SELECT DISTINCT
EVALUATE.VV.STUDENTCODE,
AVSREG.STUDENTMASTER.STUDENTID,
AVSREG.STUDENTMASTER.PROGRAMID,
AVSREG.PROGRAM.PROGRAMNAME,
EVALUATE.VV.ACADYEAR,
EVALUATE.VV.SEMESTER,
EVALUATE.VV.OFFICERID,
EVALUATE.VV.STUDENTID,
EVALUATE.VV.OFFICERNAME,
EVALUATE.VV.OFFICERSURNAME,
EVALUATE.VV.COURSENAME,
EVALUATE.VV.CAMPUSID,
EVALUATE.VV.COURSECODE
FROM
EVALUATE.VV
Inner Join AVSREG.STUDENTMASTER ON EVALUATE.VV.STUDENTID = AVSREG.STUDENTMASTER.STUDENTID
Inner Join AVSREG.PROGRAM ON AVSREG.PROGRAM.PROGRAMID = AVSREG.STUDENTMASTER.PROGRAMID
WHERE
EVALUATE.VV.STUDENTCODE = '$student_code' and
EVALUATE.VV.COURSECODE = '$COURSECODE' and
EVALUATE.VV.OFFICERID = '$OFFICERID'
ORDER BY
AVSREG.STUDENTMASTER.PROGRAMID ASC
";
$objParse = oci_parse ($objConnect, $strSQL);
oci_execute ($objParse,OCI_DEFAULT);
?>
</div>
<table width="807" height="135" border="0" align="center" cellpadding="1" cellspacing="0">
<tr>
<td width="162" height="135" align="right" valign="top"><label>
<input name="imageField2" type="image" src="image/logo.png" align="middle" width="100" height="120" />
</label></td>
<td width="641" valign="bottom"><p class="style2 style19"><span class="style12 s">แบบประเมินอาจารย์ตามกรอบมาตรฐานคุณวุฒิแห่งชาติ มหาวิทยาลัยราชภัฏยะลา </span></p>
<p class="style2 style19"><? echo"";echo $_SESSION["prefix"];echo $_SESSION["std_name"];echo "\n";echo $_SESSION["std_surname"];echo "\n";?> สาขาวิชา <? echo $_SESSION["program"]?>
<?
while($objResult = oci_fetch_array($objParse,OCI_BOTH))
{
?>
<?
}
?>
<?
oci_close($objConnect);
?>
</p>
</td>
</tr>
</table>
<p align="center" class="style2"><label>
<input type="image" name="imageField" src="image/line.jpg" width="700" />
</label>
<table width="877" border="0" align="center" cellpadding="1" cellspacing="0">
<tr>
<td height="40" align="left" valign="top"><table width="512" border="1" align="center" cellpadding="0" cellspacing="0" bordercolor="#777777">
<tr>
<td height="50" align="center" valign="top"><table width="512" border="0" align="left" cellpadding="1" cellspacing="0">
<tr>
<td height="0" align="left"><span class="style15">รหัสวิชา</span></td>
<td height="0" align="center"> </td>
<td height="0" align="left"><span class="style19"><? echo $COURSECODE;?></span></td>
</tr>
<tr>
<td width="76" height="30" align="left"><span class="style15">รายวิชา</span></td>
<td width="6" height="30" align="left"> </td>
<td width="424" align="left"><span class="style19"><? echo $COURSENAME?></span></td>
</tr>
<tr>
<td width="76" height="30" align="left"><span class="style19"><span class="style15">อาจารย์</span></span></td>
<td width="6" height="30" align="left"> </td>
<td width="424" align="left"><span class="style19"><? echo $OFFICERNAME?> <? echo $OFFICERSURNAME?></span></td>
</tr>
<tr>
<td width="76" height="30" align="left" class="style19"><strong>วัตถุประสงค์</strong></td>
<td width="6" height="30" align="left"> </td>
<td width="424" align="left"><span class="style19">ประเมินอาจารย์ผู้สอน</span></td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
<tr>
<td height="60" align="left" valign="bottom" class="style2"><span class="style12"><u>ตอนที่ 1 </u>ระดับความพึงพอใจของนักศึกษา</span></td>
</tr>
<tr>
<td height="40" align="left"><span class="style19">ระดับความพึงพอใจ มากที่สุด = 5 , มาก = 4 , ปานกลาง = 3 , น้อย = 2 , น้อยมาก = 1</span></td>
</tr>
</table>
<table width="877" border="0" align="center" bgcolor="#FFFFFF">
<tr bgcolor="#aadd99">
<td colspan="2" rowspan="2" align="center" bordercolor="#FF66FF" bgcolor="#FFCCFF"><span class="style5"><span lang="th" xml:lang="th">เกณฑ์การประเมิน</span></span></td>
<td height="26" colspan="5" align="center" bordercolor="#FF66FF" bgcolor="#FFCCFF"><span class="style15" lang="th" xml:lang="th">ระดับการประเมิน</span></td>
</tr>
<? if($COURSECODE !="") { ?>
<? if($program !="") { ?>
<? if($student_code !="") { ?>
<? include ("connect_db.php");
echo $PROGRAM;
//$strSQL = "SELECT * FROM TQF WHERE ROWNUM <= 25 ORDER BY TQF_ID ASC ";
$strSQL = "SELECT DISTINCT
EVALUATE.TQF.DESCRIPTION,
EVALUATE.LEARNING.PROGRAMID,
EVALUATE.LEARNING.COURSEID,
EVALUATE.LEARNING.TQF_ID,
AVSREG.STUDENTMASTER.PROGRAMID,
AVSREG.PROGRAM.PROGRAMNAME,
EVALUATE.VV.COURSECODE,
EVALUATE.VV.STUDENTCODE,
EVALUATE.VV.OFFICERID,
EVALUATE.VV.STUDENTID
FROM
EVALUATE.LEARNING
Inner Join EVALUATE.TQF ON EVALUATE.TQF.TQF_ID = EVALUATE.LEARNING.TQF_ID
Inner Join AVSREG.STUDENTMASTER ON EVALUATE.TQF.PROGRAMID = AVSREG.STUDENTMASTER.PROGRAMID
Inner Join AVSREG.PROGRAM ON AVSREG.STUDENTMASTER.PROGRAMID = AVSREG.PROGRAM.PROGRAMID
Inner Join EVALUATE.VV ON EVALUATE.VV.COURSECODE = EVALUATE.LEARNING.COURSECODE
WHERE
AVSREG.PROGRAM.PROGRAMNAME = '$program' AND
EVALUATE.LEARNING.COURSECODE = '$COURSECODE' AND
EVALUATE.VV.STUDENTCODE = '$student_code'
ORDER BY
EVALUATE.VV.STUDENTID ASC
";
$objParse = oci_parse ($objConnect, $strSQL);
oci_execute ($objParse,OCI_DEFAULT);
?>
<tr bgcolor="#aadd99">
<td width="60" align="center" bordercolor="#FF66FF" bgcolor="#FFCCFF"><strong>มากที่สุด</strong></td>
<td width="60" align="center" bordercolor="#FF66FF" bgcolor="#FFCCFF"><span class="style15">มาก</span></td>
<td width="60" align="center" bordercolor="#FF66FF" bgcolor="#FFCCFF"><strong>ปานกลาง</strong></td>
<td width="60" align="center" bordercolor="#FF66FF" bgcolor="#FFCCFF"><strong>น้อย</strong></td>
<td width="60" align="center" bordercolor="#FF66FF" bgcolor="#FFCCFF"><strong>น้อยมาก</strong></td>
</tr>
<?
$i=0;
$rows = oci_num_rows($objParse);
while($objResult = oci_fetch_array($objParse,OCI_BOTH))
{
$i++;
if($i%2==0)
{
$bg = "#DDDDDD";
}
else
{
$bg = "#EEEEEE";
}
?>
<tr bgcolor="<?=$bg?>">
<td width="27" height="35" align="center" bordercolor="#FF66FF" maxlength="1"><strong><? echo $i?>.</strong></td>
<td width="506" align="left" valign="middle" bordercolor="#FF66FF" maxlength="1"><strong>
<input type="hidden" name="id<?=$i;?>" value="<?=$objResult['TQF_ID']?>"/>
<?=$objResult['DESCRIPTION'];?>
<span class="style10">?</span></strong></td>
<td width="60" align="center" valign="middle" bordercolor="#FF66FF"><input type="radio" id="id<?=$i?>_1" name="q_no<?=$i?>" value="5" /></td>
<td width="60" align="center" valign="middle" bordercolor="#FF66FF"><input type="radio" id="id<?=$i?>_2" name="q_no<?=$i?>" value="4" /></td>
<td width="60" align="center" valign="middle" bordercolor="#FF66FF"><input type="radio" id="id<?=$i?>_3" name="q_no<?=$i?>" value="3" /></td>
<td width="60" align="center" valign="middle" bordercolor="#FF66FF"><input type="radio" id="id<?=$i?>_4" name="q_no<?=$i?>" value="2" /></td>
<td width="60" align="center" valign="middle" bordercolor="#FF66FF"><input type="radio" id="id<?=$i?>_5" name="q_no<?=$i?>" value="1" /></td>
</tr>
<?
}
?>
<input type="hidden" name="line" value="<?=$i;?>">
<tr>
<td colspan="7" bordercolor="#FF66FF" bgcolor="#FFCCFF"> </td>
</tr>
</table>
<?
oci_close($objConnect);
?>
<table width="877" border="0" align="center" cellpadding="1" cellspacing="0">
<tr>
<td height="60" align="left" valign="bottom"><span class="s"><u><span class="style6 style11">ตอนที่ 2 </span></u><span class="style6 style11" lang="th" xml:lang="th">ความคิดเห็นและข้อเสนอแนะต่ออาจารย์/กิจกรรมการเรียนการสอนในวิชานี้</span></span></td>
</tr>
<tr>
<td height="40" align="left" valign="bottom" class="style20">เชิญร่วมแสดงความคิดเห็น: <span class="style21">จำนวนตัวอักษรไม่เกิน 500 ตัวอักษร</span> </td>
</tr>
</table>
<p align="center">
<textarea name="COMMENT" type=textarea id="COMMENT" onkeydown="limitText(this.form.COMMENT,this.form.countdown,5OO);"
onkeyup="limitText(this.form.COMMENT,this.form.countdown,500);" cols="60" rows="9"></textarea></p>
<table width="69%" border="0">
<tr>
<th align="right" scope="col"><span class="style9">คุณมี
<input name="countdown" type="text" value=" 500 " size="2" readonly />
ตัวอักษร</span></th>
</tr>
</table>
<div align="center"><font size="2" face="Angsana New"><br />
<?php }
}
?>
<?php }
} ?>
<input type="hidden" name="hdnRows" value="<?=$i;?>">
<input name="submit" type="submit" value="บันทึกข้อมูลประเมิน" title="บันทึกข้อมูลประเมิน" onclick="return confirm('คุณต้องการบันทึกข้อมูลการประเมินใช่หรือไม่?')"/>
<input name="reset" type="reset" value="ล้างข้อมูล" onclick="return confirm('คุณต้องการยกเลิกการประเมินที่ได้ทำไว้ใช่หรือไม่?')" />
</font>
<script language="javascript" type="text/javascript">
function limitText(limitField, limitCount, limitNum) {
if (limitField.value.length > limitNum) {
limitField.value = limitField.value.substring(0, limitNum);
} else {
limitCount.value = limitNum - limitField.value.length;
}
}
</script>
</div>
<p> </p>
</form>
</body>
หน้าบันทึกค่ะ
Code (PHP)
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\")";
$str .="VALUES ";
$str .="('".$_GET["student_code"]."','".$_GET["OFFICERID"]."','".$_GET["COURSECODE"]."','".$_POST["id".$i]."','".$_POST["q_no".$i]."')";
$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\") ";
$strSQL .="VALUES ";
$strSQL .="('".$_POST["COMMENT"]."','".$_GET["OFFICERID"]."','".$_GET["student_code"]."','".$_GET["COURSECODE"]."')";
$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);
Date :
2012-05-21 00:59:20
By :
comerror
OK แล้วพรุ่งนี้จะตามดูให้น่ะ
Date :
2012-05-21 01:02:05
By :
sakuraei
ตารางที่เอามาให้พี่ดูทั้ง 3 อัน มีฟิวด์ไหนที่เป็น primary key / unique key บ้าง
Date :
2012-05-21 01:18:50
By :
sakuraei
Load balance : Server 03