|
|
|
รบกวนด้วยครับ ปัญหาการ update ข้อมูล 2 ตาราง โดย 2 ตารางนั้นมีข้อมูล เหมือนกัน |
|
|
|
|
|
|
|
รบกวนด้วยครับ
ต้องการที่จะ Update 2ตาราง โดยมี ชื่อฟิลด์เหมือนกัน คือ idposition
ตอนนี้ข้อมูล update ได้แค่ tb ob ครับ
Code (PHP)
<input type="text" name="idposition" value="<?php echo"$idposition"; ?>">
Code (PHP)
<html>
<head>
<title></title>
</head>
<body>
<?php
$objConnect = mysql_connect("localhost","root","root") or die("Error Connect to Database");
$objDB = mysql_select_db("police_mamber");
mysql_db_query($dbname,"SET NAMES tis620");
mysql_query("SET character_set_database ='tis620'");
mysql_query("SET character_set_results ='tis620'");
mysql_query("SET character_set_client ='tis620'");
mysql_query("SET character_set_connection ='tis620'");
mysql_query("SET character_set_system ='tis620'");
mysql_query("collation_connection = tis620_thai_ci");
mysql_query("collation_database = tis620_thai_ci");
mysql_query("collation_server = tis620_thai_ci");
$strSQL = "UPDATE ob SET ";
$strSQL .="id= '".$_POST["id"]."' ";
$strSQL .=",idpeople= '".$_POST["idpeople"]."' ";
$strSQL .=",rank= '".$_POST["ddlrank"]."' ";
$strSQL .=",sex= '".$_POST["sex"]."' ";
$strSQL .=",name= '".$_POST["name"]."' ";
$strSQL .=",lastname= '".$_POST["lastname"]."' ";
$strSQL .=",idposition= '".$_POST["idposition"]."' ";
$strSQL .=",birth= '".$_POST["birth"]."' ";
$strSQL .=",daypolice= '".$_POST["daypolice"]."' ";
$strSQL .=",ranknow= '".$_POST["ranknow"]."' ";
$strSQL .=",beforerank= '".$_POST["beforerank"]."' ";
$strSQL .=",daybefore= '".$_POST["daybefore"]."' ";
$strSQL .=",firstnow= '".$_POST["firstnow"]."' ";
$strSQL .=",daypositionnow= '".$_POST["daypositionnow"]."' ";
$strSQL .=",level= '".$_POST["txtName"]."' ";
$strSQL .=",lvsalary= '".$_POST["resultText"]."' ";
$strSQL .=",salary= '".$_POST["salary"]."' ";
$strSQL .=",manset= '".$_POST["ddmanset"]."' ";
$strSQL .=",univer= '".$_POST["ddluniver"]."' ";
$strSQL .=",levelmaster= '".$_POST["levelmaster"]."' ";
$strSQL .=",editname= '".$_POST["editname"]."' ";
$strSQL .=",sv= '".$_POST["sv"]."' ";
$strSQL .=",pgg= '".$_POST["pgg"]."' ";
$strSQL .=",pbg= '".$_POST["pbg"]."' ";
$strSQL .=",othergrad= '".$_POST["othergrad"]."' ";
$strSQL .=",address= '".$_POST["address"]."' ";
$strSQL .="WHERE id = '".$_POST["id"]."' ";
$objQuery = mysql_query($strSQL);
$strSQL = "UPDATE position SET";
$strSQL = "idposition= '".$_POST["idposition"]."' ";
$strSQL .="WHERE idposition = '".$_POST["idposition"]."' ";
$objQuery = mysql_query($strSQL);
if($objQuery)
{
echo "<META HTTP-EQUIV=\"Refresh\" CONTENT=\"0;URL=dpsearch.php\">";
}
else
{
echo "Error Save [".$strSQL."]";
}
mysql_close($objConnect);
?>
</body>
</html>
Tag : PHP, MySQL
|
ประวัติการแก้ไข 2013-03-02 19:10:25 2013-03-02 19:10:54 2013-03-02 19:11:17 2013-03-02 21:08:13
|
|
|
|
|
Date :
2013-03-02 19:08:56 |
By :
puldool |
View :
1376 |
Reply :
11 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เขียน Code ขึ้นมาอีก 1 ชุดครับ
|
|
|
|
|
Date :
2013-03-02 19:09:57 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
พี่ครับ ถ้า query update ชุดคำสั่ง ด้วยกัน ไม่ได้ใช่ไหมครับ คือผมไม่รู้ว่าต้อง join ข้อมูลรึเปล่า หรือแบบไหน
เพราะต้องตรวจสอบข้อมูล 2 ตารางตรงกันถึงแก้ไขได้
|
|
|
|
|
Date :
2013-03-02 19:14:54 |
By :
puldool |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เรื่องหาที่ผิดขอให้บอกครับ
บรรทัดที่ 56 - 60
Code (PHP)
$strSQL = "UPDATE position SET";
$strSQL = "idposition= '".$_POST["idposition"]."' "; // นี่ครับ น้องใช้ = ไม่ใช่ .= มันเลยกลายเป็นว่า "UPDATE position SET" ถูกแทนที่ด้วยค่าใหม่ไปเลย ดังนั้น query จึง error และดูเหมือนว่าอัพเดทได้แค่ตารางเดียว
$strSQL .="WHERE idposition = '".$_POST["idposition"]."' ";
$objQuery = mysql_query($strSQL);
|
|
|
|
|
Date :
2013-03-02 19:32:47 |
By :
cookiephp |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณครับ ตอนนี้ ลอง กรอกเลข 7ไป ขึ้น Error Save [UPDATE position SETidposition= '7' WHERE idposition = '7' ]
ไม่รู้ว่ารูปแบบ คำสั่ง ถูกรึเปล่า
|
ประวัติการแก้ไข 2013-03-02 19:46:53
|
|
|
|
Date :
2013-03-02 19:44:56 |
By :
puldool |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ผิดครับ มันติดกันเลย
UPDATE position SETidposition= '7' WHERE idposition = '7'
ต้องแยกกันครับ
UPDATE position SET idposition= '7' WHERE idposition = '7'
Code (PHP)
$strSQL = "UPDATE position SET";
$strSQL .= " idposition= '".$_POST["idposition"]."' "; // เพิ่มช่องว่างอันนึง
$strSQL .="WHERE idposition = '".$_POST["idposition"]."' ";
$objQuery = mysql_query($strSQL);
|
|
|
|
|
Date :
2013-03-02 19:51:11 |
By :
cookiephp |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลองแล้วครับพี่ ผ่านครับไม่มี error แต่ข้อมูล ไม่ลง tb position อะครับ ลงแต่ tb ob
ผมกำลังคิดว่าต้อง ส่งตัวแปรหรืออะไร ให้ sql ตรวจสอบเพิ่ม หรือเปล่า
|
ประวัติการแก้ไข 2013-03-02 20:03:16
|
|
|
|
Date :
2013-03-02 20:00:12 |
By :
puldool |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ข้อมูลไม่ลงที่ว่านี่คือต้องการ INSERT หรือ UPDATE ครับ
ถ้ามันไม่มีแถวนั้นอยู่ ก็ UPDATE ไม่ได้ ต้อง INSERT ก่อนนะครับ
|
|
|
|
|
Date :
2013-03-02 20:05:30 |
By :
cookiephp |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
อ่อแล้วก็ผมลองสังเกตดู
น้องสั่งให้ UPDATE แถวในเงื่อนไขแปลกๆ นะครับ
UPDATE position SET idposition= '7' WHERE idposition = '7'
สั่งให้ UPDATE โดยหาแถวที่มี idposition เท่ากับ 7 โดยเมื่อเจอแล้วให้ SET idposition ให้เท่ากับ 7
เพื่ออะไรครับ คือแบบนี้มันก็จะไม่เปลี่ยนแปลงอะไรเลยนะครับ
|
|
|
|
|
Date :
2013-03-02 20:09:05 |
By :
cookiephp |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คือข้อมูล มีอยู่แล้วนะครับ
insert ไปแล้ว ลงทีเดียว 2 ตาราง ในครั้งเดียว ค่าเดียวกัน อันนี้ได้แล้วครับ
แล้วปัญหาที่เป็นอยู่ อยากแก้ไข ครั้งเดียว 2 ตาราง ในค่าเดียวกัน
|
|
|
|
|
Date :
2013-03-02 20:15:33 |
By :
puldool |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (SQL)
UPDATE position
LEFT JOIN ob
ON ob.id = position.id
SET position.idposition =ob.idposition
WHERE ob.id =position.id
รบกวนช่วยดู ช่วยแปลงเป็น php หน่อยนะครับ
|
ประวัติการแก้ไข 2013-03-02 21:48:13 2013-03-02 21:53:19 2013-03-02 21:55:40 2013-03-02 22:13:32 2013-03-02 22:19:23 2013-03-02 22:24:57
|
|
|
|
Date :
2013-03-02 21:46:52 |
By :
puldool |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ได้แล้วนะคร้าบบ update tb 2 ตาราง พร้อมกัน โดยอ้างอิง pk fk
Code (PHP)
$strSQL ="UPDATE position
LEFT JOIN ob
ON ob.id = position.id
SET position.idposition =ob.idposition
WHERE ob.id =position.id
";
|
|
|
|
|
Date :
2013-03-02 22:26:16 |
By :
puldool |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 02
|