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,037

HOME > PHP > PHP Forum > ช่วยแนะนำ การ Insert แบบดึงข้อมูลจาก สองตารางมา แล้ว checkbox ให้มัน insert ลงฐานข้อมูลให้หน่อยครับ



 

ช่วยแนะนำ การ Insert แบบดึงข้อมูลจาก สองตารางมา แล้ว checkbox ให้มัน insert ลงฐานข้อมูลให้หน่อยครับ

 



Topic : 113565



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



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




จากโค๊ด ผมทำการ select ข้อมูลจาก 2 ตาราง มา แต่ insert ได้เฉพาะตาราง inscheck เท่านั้น
ถ้าเราต้องการ จะ Insert ค่าจากตาราง color ไปด้วยต้องเขียนยังไงครับ

Code (PHP)
<?php
	$con = mysql_connect('localhost','root','root')or die(mysql_error());
	$condb = mysql_select_db('test');
	mysql_query('SET NAME UTF8');
	if(!$condb){
	 echo"NO select database name".$db_name;
	}


	$select ="SELECT * FROM inscheck";
	$result = mysql_query($select);
	//$rows = mysql_fetch_array($result);
	//echo $rows['ID'];
?>
<form name="inscheck" method="post" action="getcheck.php">
	<table border='1px' align='center'>
		<tr>
			<th>ID</th>
			<th>Name</th>
			<th>Lname</th>
			<th>Color</th>
			<th>Status</th>
		</tr>
		<?php while($rows = mysql_fetch_array($result)){ ?>
		<tr>
			<td><?=$rows['ID'];?></td>
			
			<td><?=$rows['Name'];?></td>
			<td><?=$rows['Lname'];?></td>
			<td>
				<select name="Color[]">
			        <option value="">- เลือกสี -</option>
			      
			        <?php $sql  ="SELECT * FROM color;"; 
		            	  $res  = mysql_query($sql);
			              echo mysql_error();
			              while($data = mysql_fetch_assoc($res)){
		      	    ?>  
		            <option value="<?php echo $data['ColorID']; ?>">
		            	<?php echo $data['Color']; ?>
		            </option>
		      	    <?php } ?>
	      		</select>

			</td>	
			<td><input type="checkbox"name="ID[]"value="<?=$rows['ID'];?>"></td>
		</tr>
		<?php } ?>
	</table>

	<input type="submit" name="submit" value="send">
</form>

<?php
	$con = mysql_connect('localhost','root','root') or die(mysql_error());
	$condb = mysql_select_db('test');
	
	for($i = 0; $i < count($_POST['ID']); $i++){
		if($_POST['ID'][$i]!=''){
			
			$strSQL = "SELECT * FROM  inscheck WHERE ID ='".$_POST['ID'][$i]."'";
			$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
			$objResult = mysql_fetch_array($objQuery);

			$insert = "INSERT INTO getcheck (ID,Name) VALUES ('".$objResult['ID']."',
				'".$objResult['Name']."')";

			$result = mysql_query($insert)or die("Error Query[".$insert."]");
			//echo mysql_error();
			
		
		}
	}

	echo "Save Done";
?>




Tag : PHP, MySQL







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2015-01-02 15:56:08 By : shield View : 918 Reply : 6
 

 

No. 1



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



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


Code (PHP)
$insert = "INSERT INTO getcheck (ID,Name) VALUES ('".$objResult['ID']."','".$objResult['Name']."')";


ต้องถามก่อนว่าฟิล ID เป็นไพรมารีหรือไม่ ถ้าไช่ มันก็ไม่ได้เนื่องจากเกิดอาการซ้ำของไพรมารี
*แต่ก็ไช่ว่าจะผิด ต้องดูไปถึงการมาของ $objResult['ID'] ด้วยเพราะต้องให้ตัวนี้เท่ากับ ID ถ้าตัวนี้มาครั้งแรกละเข้าแน่ ถ้ามาครั้งที่ >1 ไงก็ไม่เข้า เพราะมันซ้ำคร้าบ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-01-02 16:33:28 By : meannerss
 


 

No. 2



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



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


ตอบความคิดเห็นที่ : 1 เขียนโดย : meannerss เมื่อวันที่ 2015-01-02 16:33:28
รายละเอียดของการตอบ ::

ครับเข้าใจตามนั้นครับ แต่ผมจะเขียนโค๊ด ยังไงให้ รับค่าจาก <select name="Color[]"> มาแล้ว insert ลง getcheck
ครับเพราะค่านี้ผม ดึงจาก อีกตารางมาครับ

img


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-01-02 17:11:21 By : shield
 

 

No. 3



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



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


รู้จำนวนรอบแล้วเทียบค่าครับ ใส่ text filed hidden ไว้ตัวนึง ไว้เก็บค่าจำนวนรอบที่ได้ในก่อนหน้า
จากนั้นก็มาเทียบและเรียกใช้ $_POST['Color[$i]'] หยุดเมื่อ i มากกว่า ค่า hidden ที่เก็บมา


ประวัติการแก้ไข
2015-01-02 23:16:59
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-01-02 23:16:11 By : meannerss
 


 

No. 4



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



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


-**- ไม่มีใครเคยทำเลยหรือครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-01-02 23:17:34 By : shield
 


 

No. 5



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



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


ท่านอื่นอาจมีวิธีเล่นกับอาเรย์ที่ดีกว่านี้ครับ เช่นการ foreach แต่ผมแนะนำหลักการง่ายๆ เอ้ามาลองแกะดูน่าจะประยุกต์ไหวนะ

Code (PHP)
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<form  name="xzczx" action="" method="post" >
<table width="1%" border="1">
<?
$i=0;
$rows=10; //สมมุติมันคือ mysql_num_rows เจอมา 10 แถว
while ($i<$rows) {
?>
  <tr>
    <td><input type="text" name="name[]" id="textfield" value="รอบที่<?=$i?>" /></td>
    <td><select name="Color[<?=$i?>]">
  <option value="a">a</option>
  <option value="b">b</option>
  <option value="c">c</option>
  <option value="d">d</option>
  <option value="e">e</option>
</select></td>
  </tr>
<?
$i++; }
?> 
<tr>
    <td>ส่ง</td>
    <td> <input type="hidden" name="rows" value="<?=$rows?>" /> <input type="submit" name="button" id="button" value="ส่ง" />  </td>
  </tr>
</table>

<?
$XXX=0;
while($XXX<$_POST['rows']) {
echo $_POST['name'][$XXX]."---------->".$_POST['Color'][$XXX]."<BR/>";
$XXX++;}
?>
</form>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-01-02 23:41:02 By : meannerss
 


 

No. 6



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



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


Code (PHP)
$insert = "INSERT INTO getcheck (ID,Name,Color) VALUES ('".$objResult['ID']."','".$objResult['Name']."','".$_POST['Color'][$i]."')";

แบบนี้ไม่ได้เหรอครับ ที่ผมเข้าใจคือท่านอยากจะ Insert ค่าที่รับมาจาก Select แล้ว insert ลงในฐานข้อมูล อ้างอิงตาม id ที่ได้ query ออกมา ใช่ไหมครับ
ถ้าเข้าใจผิดก็ขออภัยด้วยนะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-01-03 19:33:11 By : notza001
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ช่วยแนะนำ การ Insert แบบดึงข้อมูลจาก สองตารางมา แล้ว checkbox ให้มัน insert ลงฐานข้อมูลให้หน่อยครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 00
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 อัตราราคา คลิกที่นี่