ขอโค้ดเวาลบันทึก ให้รันลำดับ 1 2 3 4 5 6 7 8 9 ไปเรื่อยอ่ะค่ะ แค่ขอแบบโค้ดได้ไหมค่ะ
ฟิวด์ id มันเป็นออโต้อินครีเมนต์ มันรันเองของมันอยู่แล้วนิครับ
หรือไม่ก็ loop for เอาค่า loop มาใช้ก็ได้ครับ
Date :
2013-07-03 11:18:17
By :
Joe_Dev
ลองสร้างฟิวด์มาใหม่อีก 1 ฟิวด์ครับ
เช่น Lotid ชนิดเป็น int เป็นแบบ autoagreement เซทเป็นคีย์เลยครับ
หลังจากนั้นก็ เซฟเลยครับ แล้วอย่าลืม เอา tid เดิม ยกเลิกเป็นคีย์ซะแล้วลบออกเลย
เพราะ Lotid ใหม่ที่เซทจะรันไอดีใหม่ให้ อัตโนมัติ
เวลา insert ก็ไม่ต้องเลือก Lotid ใหม่มาด้วยเพราะมันจะรันอัติโนมัติ
Date :
2013-07-03 11:33:42
By :
compiak
แล้วแบบที่เขียนโค้ดเอา มีไหมคะ
Date :
2013-07-03 11:47:40
By :
pampam
Code (SQL)
$sql_log="insert into table_data(ID,A,B,C)";
$sql_log .="SELECT MAX(ID)+1,'$a','$b','$c' from table_data";
แบบนี้ได้ไหมครับ
หรือผมเข้าใจคำถามผิด
Date :
2013-07-03 12:25:11
By :
aimoomoo
ขอบคุณทุกคนมากค่ะ เด๋วจะลองทำดูนะคะ
Date :
2013-07-03 12:59:40
By :
pampam
ในกรณีที่ id ไม่ได้เป็น autoagreement ย้ำกรณีที่ไม่ได้ตั้งค่า id เป็น auto นะครับ
ก็ใช้
Code (PHP)
$selectmaxid="SELECT MAX(id) as mid FROM table";
$qrmaxid=mysql_query($selectmaxid) or die ($selectmaxid);
$rsmaxid=mysql_fetch_array($qrmaxid);
$mid=$rsmaxid["mid"]+1;
$sqlinsert="INSERT INTO table(id,name,...,...) VALUES ('$mid','".$_POST["name]."',...,...)";
ประมาณนี้มั่งครับ
Date :
2013-07-03 13:12:03
By :
compiak
ในกรณีที่ id ไม่ได้เป็น autoagreement
เขียนแบบนี้ก็ได้ครับ sql ชุดเดียวเสร็จ
Code (SQL)
$sql_log="insert into table_data(ID,A,B,C)SELECT MAX(ID)+1,'$a','$b','$c' from table_data";
Date :
2013-07-03 13:33:48
By :
aimoomoo
Load balance : Server 02