Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,028

HOME > PHP > PHP Forum > จะแอดไอดีของตารางหนึ่ง ไปอีกตารางหนึ่งแต่ให้เพิ่มแบบรันออโต้



 

จะแอดไอดีของตารางหนึ่ง ไปอีกตารางหนึ่งแต่ให้เพิ่มแบบรันออโต้

 



Topic : 091482



โพสกระทู้ ( 7 )
บทความ ( 0 )



สถานะออฟไลน์




คือว่าเขียนฟอร์มดึงข้อมูลจากตารางหนึ่งแบบ by id แล้วจะเอาไป insert เข้าอีกตารางโดยใช้ id จากตารางแรก แต่เพิ่มหลักแล้วให้รันออโต้ ทำไงค่ะ

Table1
id1 = 01
id2 = 101
data1 =aa


Table2

id1 = 01
id2 = 101xx <---xx คือ auto run
data1=bb



Tag : PHP, MySQL







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2013-02-26 16:59:14 By : sacaney View : 796 Reply : 4
 

 

No. 1



โพสกระทู้ ( 4,169 )
บทความ ( 7 )

Hall of Fame 2012

สถานะออฟไลน์


form.php
Code (PHP)
<select id="id1" onchange="selOption($('#id1'),$('#id2'));">
<?
$select=mysql_query("SELECT * FROM table1 ORDER BY id asc") or die (mysql_error());
while($tb1=mysql_fetch_array($select)){
?>
<option value="<?=$tb1['id'];?>"><?=$tb1['id'];?></option>
<? } ?>
</select>
<input type="text" id="id2" value="" />
<script language="javascript" src="module/inc/scripts/jquery-1.8.1.min.js"></script>
<script>
// ส่งค่า post ajax&jquery โดยส่งค่า id1 ไปทำการ select ที่ไฟล์ check.php
function selOption(id1,id2){
	$.ajax({url:"check.php",
		async:false,
		cache:false,
		global:false,
		type:'POST',
		data:'id1='+id1.val(),
		dataType:"html",
		success: function(result){
			id2.val(result);	
		}
	});	
}
</script>

check.php
Code (PHP)
<?
                // รับค่า id1 มาทำการหาค่าล่าสุด 1 ตำแหน่งเท่านั้น
	$id1=$_POST['id1'];
	$select=mysql_query("SELECT * FROM table2 WHERE id1='".$id1."' ORDER BY id2 DESC LIMIT 1") or die (mysql_error());
	$tb2=mysql_fetch_array($select);
	$num=mysql_num_rows($select);
	if($num == 0){  //ถ้าไม่มีให้ สร้าง num ขึ้นมาใหม่
		echo $num=$id1."01";	
	}else{ // ถ้าไม่ใช่ให้ +1
		echo $num=$tb2['id2']+1;	
	}
?>

ได้ตามเงื่อนไขแล้วค่อย insert ตามปกติ ลอง apply ดูครับ








ประวัติการแก้ไข
2013-02-26 17:30:28
2013-02-26 17:31:40
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-26 17:29:47 By : Ex-[S]i[L]e[N]t
 


 

No. 2



โพสกระทู้ ( 7 )
บทความ ( 0 )



สถานะออฟไลน์


ขอบคุณค่ะ เดี๋ยวจะลองทำดู
แต่ถ้าไม่ใช้ jquery ล่ะค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-26 17:53:10 By : sacaney
 

 

No. 3



โพสกระทู้ ( 4,169 )
บทความ ( 7 )

Hall of Fame 2012

สถานะออฟไลน์


ตอบความคิดเห็นที่ : 2 เขียนโดย : sacaney เมื่อวันที่ 2013-02-26 17:53:10
รายละเอียดของการตอบ ::
ท่านสามารถ กรอกข้อมูล และ action ไปหน้า check ได้เลยครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-26 18:03:27 By : Ex-[S]i[L]e[N]t
 


 

No. 4



โพสกระทู้ ( 1,819 )
บทความ ( 20 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Facebook

ขอให้แนวคิดดีกว่าครับ

ให้ตาราง 1 มีอีกฟิลด์นึง สมมติชื่อว่า auto_number

แล้วเวลา INSERT ตาราง 2 เนี่ย ให้ SELECT auto_number จากตาราง 1 มาเป็นค่าที่จะ INSERT
และใช้ CONCAT() กับ LPAD() ช่วยจัดรูปแบบ
โดย LPAD() จะช่วยทำเลข 1 ให้เป็น 0001 อะไรประมาณนี้
ส่วน CONCAT() จะเชื่อม id2 กับ auto_number เข้าด้วยกันเป็น 1010001


Code (SQL)
// สมมติว่า $id1 คือ id1 ของตาราง 1
// สมมติว่า $data1 คือ data1 ของตาราง 2
mysql_query("
INSERT INTO `table2`
(`id1`, `id2`, `data1`)
VALUES
(
    '$id1',
    (SELECT CONCAT(`id2`, LPAD(`auto_number`, 4, '0')) FROM `table1` WHERE `id1` = '$id1'),
    '$data1'
)
");


หลังจากนั้นก็ UPDATE ตาราง 1

mysql_query("UPDATE `table1` SET `auto_number` = `auto_number` + 1 WHERE `id` = '$id1'");

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-26 18:21:23 By : cookiephp
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : จะแอดไอดีของตารางหนึ่ง ไปอีกตารางหนึ่งแต่ให้เพิ่มแบบรันออโต้
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 01
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่