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

HOME > PHP > PHP Forum > ช่วยแก้โค๊ดผมหน่อยครับ insert ตารางรายละเอียด เข้าแค่บันทัดเดียวทั้งๆที่ข้อมูลมีหลายบันทัด



 

ช่วยแก้โค๊ดผมหน่อยครับ insert ตารางรายละเอียด เข้าแค่บันทัดเดียวทั้งๆที่ข้อมูลมีหลายบันทัด

 



Topic : 074398



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



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




คือหน้าฟอร์มของผมมัน insert 2 ตารางครับ ตารางหลักได้แล้ว แต่ตารางรายละเอียดมันเข้าแค่บันทัดเดียวทั้งที่ข้อมูลมีหลายบันทัดครับ
ผมลองหลายๆวิธีไม่ได้สักทีครับ รบก่วนพี่ๆหน่อยน่ะครับ


ลักษณะหน้าฟอร์มครับ


f


แล้วก็โค๊ดหน้าฟอร์มหลักครับ





Code (PHP)
<?
	session_start();
		
		
		mysql_connect('localhost','root','12345');
		mysql_select_db('medical_db');
		$strSQL = "SELECT * FROM person p
				   WHERE per_id = '".$_SESSION['per_id']."' ";
		
		$objQuery = mysql_query($strSQL);
		$objResult = mysql_fetch_array($objQuery);
?>
	
	<h1 class="h1">บันทึกรายการที่เบิก</h1>
	
<form method="post" action="ActionController.php?action=checkorder/InsertReceive">

	<!-- อ่านที่มาของการเบิก  -->
	<table width="300px">
		<tr>
			<? $name = $order["per_name"];?> 
			<? $lastname = $order["last_name"];?>
			
			<td><center>เลขที่ใบเบิก</center></td>
			<td><center>วันที่เบิก</center></td>		
		</tr>
		<tr>
			<td><center><?php echo $order["pay_id"]; ?></center></td>	
			<td><center><?php echo $order["pay_date"]; ?></center></td>	
		</tr>
		</br><br/>
	</table>
	
	<!-- บันทึกลงตารางรายละเอียดใบเบิก  -->
	<?
		include_once("function/OrderDataAccess.php");
		$orders = readAllOrderDetail();
	?>
	
	<table>		
		<tr>
			<th scope="col">ลำดับ</th>
			<th scope="col">ชื่อเวชภัณฑ์</th>
			<th scope="col">จำนวน</th>				
			<th scope="co1">สถานะ</th>			
		</tr>
			
		<?php
			foreach($orders as $order)
			{
		?>
	
		<tr>
			<input type="hidden" name="me_id" id="me_id" class="" value="<?= $order["me_id"]; ?>"/>
			
			<td><center>
				<?php echo $order["p_id"]; ?>
			</center></td>
			<td>
				<input type="text" name="me_name" id="me_name" class="" value="<?= $order["me_name"]; ?>"/>
			</td>
			<td>
				<input size="2" type="text" name="amount" id="amount" class="" value="<?= $order["amount"]; ?>"/>
			</td>			
			<td>
		        <select name="status" id="status">
		          <option value="1"> ยังไม่อนุมัติ </option>
		          <option value="2"> จ่ายแล้ว </option>
		          <option value="3"> จ่ายบางส่วน </option>
		          <option value="3"> ค้างจ่าย </option>
		        </select>
        	</td>
		</tr>
		</br></br>
		<?php
			}
		?>
	</table> 	

	<!-- บันทึกลงตารางหลัก  -->
	<table>
		<tr>
			<input type="hidden" name="per_id" id="per_id" value="<?=$objResult['per_id']?>" />
			
			<td scope="col">ผู้เบิก : </td>
			<td scope="col">ผู้อนุมัติ : </td>
			<td scope="col">วันที่อนุมัติ : </td>
		</tr>
		<tr>
			<td>
				<input type="text" name="per_id2" id="per_id2" class="" value="<?= $name ?> <?= $lastname ?>"/>
			</td>
			<td>			
				<input type="text" name="per_name" id="per_name" class="" value="<?=$objResult["per_name"];?> <?=$objResult["last_name"];?>"/>
			</td>
			<td>
				<input type="text" name="pad_date" id="pad_date" class="" value="<?=date('m-d-Y')?>"/>
			</td>
		</tr>
		</br><br/>
	</table>
	<br/><br/><br/><br/><br/><br/>
	
	<input type="hidden" name="hdnMaxLine" value="0">
	<center><input type="submit" name="btnSubmit" value="ตกลง"></center>
</form>






หน้าบันทึกลงฐานครับ InsertReceive.php





Code (PHP)
<?
	session_start();
?>
	
<?php
	$con = mysql_pconnect('localhost','root','12345');
	if (!$con)
	  {
	  echo "Can't connect to database"; 
	  }
	
	mysql_select_db('medical_db', $con);
	
	
	$sql="INSERT INTO paid (per_id, per_id2, pad_date) VALUES('$_POST[per_id]','$_POST[per_id2]','$_POST[pad_date]')";
	mysql_query($sql,$con) or die(mysql_error()."<br />".$sql);
	
	$last_id = mysql_insert_id();

	$sql1="INSERT INTO paid_detail (pad_id, me_id, amount, status) VALUES( '$last_id' ,'{$_POST["me_id"]}' , '{$_POST["amount"]}' , '{$_POST["status"]}' )";
	mysql_query($sql1,$con) or die(mysql_error()."<br />".$sql1);
	

	echo "<h4> Save 2 Successful.</h4>";
	

	mysql_close($con)
?>





ประมาณนี้ครับไม่ทราบว่าต้องแก้ตรงไหนครับ
ผมทำหลายรอบยังไม่ได้สักทีครับ
ขอบคุณครับ



Tag : PHP, MySQL







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2012-02-23 14:49:31 By : Mr.mee View : 1209 Reply : 6
 

 

No. 1



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

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

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

ชื่อ input ต้องเป็น array ครับ

เช่น
Code (PHP)
1<input type="text" name="name[]" value="">
2<input type="text" name="name[]" value="">
3<input type="text" name="name[]" value="">
4<input type="text" name="name[]" value="">

for($i=0;$i<count($_POST['name']);$i++)
{
echo "<br>".$_POST['name'][$i];
}









ประวัติการแก้ไข
2012-02-23 14:58:02
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-02-23 14:57:27 By : mangkunzo
 


 

No. 2



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



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


Code (PHP)
<?php
foreach($orders as $order)
{
?>

<tr>
<input type="hidden" name="me_id" id="me_id" class="" value="<?= $order["me_id"]; ?>"/>

<td><center>
<?php echo $order["p_id"]; ?>
</center></td>
<td>
<input type="text" name="me_name" id="me_name" class="" value="<?= $order["me_name"]; ?>"/>
</td>
<td>
<input size="2" type="text" name="amount" id="amount" class="" value="<?= $order["amount"]; ?>"/>
</td>	
<td>
<select name="status" id="status">
<option value="1"> ยังไม่อนุมัติ </option>
<option value="2"> จ่ายแล้ว </option>
<option value="3"> จ่ายบางส่วน </option>
<option value="3"> ค้างจ่าย </option>
</select>
</td>
</tr>
</br></br>
<?php
}
?>


ใช้ foreach ลูปแสดงข้อมูล แต่ใช้ name="me_id" id="me_id" name="me_name" id="me_name" name="amount" id="amount" เหมือนกันหมด มันเลยได้แต่ข้อมูลอันแรก

ควรใช้เป็นอาร์เรย์ name="me_name[]" ไม่ต้องมี id="me_name" ก็ได้ ใส่ [] หลัง id name amount


ในหน้า insert เช็คค่า

Code (PHP)
$x = count($_POST['me_id'])-1; 

for($i=0;$i<=$x;$i++) // วนเช็คว่ามีกี่ตัว
{
   $id = $_POST['me_id'][$i];
   $name = $_POST['me_name'][$i];   //  รับค่าที่ละตัว
   $amount = $_POST['amount'][$i];      

   $sql  = mysql_query("insert....................");  // ลง DB;
  
}

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-02-23 15:08:30 By : randOmizE
 

 

No. 3



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



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


ขอบคุณทุกคำแนะนำครับ
ผมลองทำใหม่แล้วตามที่พี่แนะยังไม่ได้ครับ

Code ครับ

Code (PHP)
<?php
			foreach($orders as $order)
			{
		?>
	
		<tr>
			<input type="hidden" name="me_id[]" class="" value="<?= $order["me_id"]; ?>"/>
			
			<td><center>
				<?php echo $order["p_id"]; ?>
			</center></td>
			<td>
				<input type="text" name="me_name[]" class="" value="<?= $order["me_name"]; ?>"/>
			</td>
			<td>
				<input size="2" type="text" name="amount[]" class="" value="<?= $order["amount"]; ?>"/>
			</td>
			
			<td>
		        <select name="status[]" >
		          <option value="1"> ยังไม่อนุมัติ </option>
		          <option value="2"> จ่ายแล้ว </option>
		          <option value="3"> จ่ายบางส่วน </option>
		          <option value="3"> ค้างจ่าย </option>
		        </select>
        	</td>
		</tr>
		</br></br>
		<?php
			}
		?>


หน้า insert ครับ

Code (PHP)
	$last_id = mysql_insert_id();

	$x = count($_POST['me_id'])-1; 

	for($i=0;$i<=$x;$i++) // วนเช็คว่ามีกี่ตัว
	{
	   $id = $_POST['me_id'][$i];
	   $name = $_POST['me_name'][$i];   //  รับค่าที่ละตัว
	   $amount = $_POST['amount'][$i];
	   $status = $_POST['status'][$i];      
	
	   $sql2  = "INSERT INTO paid_detail (pad_id, me_id, amount, status) VALUES ('$last_id', $id, $name, $amount, $status)";  // ลง DB;
	   mysql_query($sql2,$con) or die(mysql_error()."<br />".$sql2);
	}


	echo "<h4> Save 2 Successful.</h4>";

	mysql_close($con)


แก้แบบนี้ไหมครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-02-23 20:10:22 By : Mr.mee
 


 

No. 4



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



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



แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-02-24 00:18:22 By : Mr.mee
 


 

No. 5



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



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


เงียบ....
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-02-24 13:11:45 By : Mr.mee
 


 

No. 6



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



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


ไม่มีใครช่วยผมเลยหรอ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-02-24 16:08:58 By : Mr.mee
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ช่วยแก้โค๊ดผมหน่อยครับ 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 04
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 อัตราราคา คลิกที่นี่