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

HOME > PHP > PHP Forum > ผมขอคำปรึกษาหน่อยครับ มีเรื่องงงนิดหน่อยครับ ดูจากรูปก่อนนะครับ



 

ผมขอคำปรึกษาหน่อยครับ มีเรื่องงงนิดหน่อยครับ ดูจากรูปก่อนนะครับ

 



Topic : 044442



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



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




ดูจากรูปก่อนนะครับ
1111
จากรูปแรกครับ เป็นการเก็บค่าตัวเลขเพื่อที่จะทำการสร้าง Textbox รับค่า ตามการกำหนด ของ User ครับ
เมื่อผมได้กำหนด จำนวน แถวแล้วจะได้ดังรูปนี้นะครับ
22222

แต่สิ่งที่ผมเจอปัญหาคือ ถ้าผมต้องการที่จะส่ง ค่าไปบันทึกลง database ผมควรทำยังไงดี ในเมื่อ ผมได้ สร้าง Form ขึ้นมา 1 Form เพื่อใช้ ในการสร้าง Textbox รับค่า ข้อมูล ซึ่ง มันทำให้ผมเกิดความสับสนว่าผมจะส่งค่าอย่างไงดี ครับ เพราะผมมีความจำเป็นในการใช้ Form ที่ใช้ในการสร้าง TexTbox ขึ้น มา แต่พอสร้าง เสร็จกับงงว่า แล้วถ้าผมจะส่งค่าไปบันทึก ผมควรจะทำแบบไหนดีครับ ขอคำแนะนำจากทุกท่านครับ เกิดงงครับ



Tag : - - - -







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2010-06-24 10:21:25 By : SOUL View : 1323 Reply : 20
 

 

No. 1



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



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

ตั้งให้textboxเป็นarrayซิค่ะ แล้วส่งค่าเป็นarrayไป เวลาแอดข้อมูลลงฐานก็วนลงเอาค่ะ

ตัวอย่าง
$_SESSION['item'] เป็น array

Code (PHP)
  if(isset($_SESSION['item'])){
	 
						foreach($_SESSION['item'] as $a => $value){
						$order_pro[$k] = $value;
											$pro = mysql_query("select Price_Pro from Product where ID_Pro = '$order_pro[$k]'");
											while($re = mysql_fetch_array($pro)){
											$p = $re['Price_Pro'] ;//* $num[$k];
											
											$add = mysql_query("insert  into statement (ID_Pro,ID_Order,Price,amount)VALUES('$order_pro[$k]','$id','$p','$num[$k]')");
											}
												$k++;
						}
						}







Date : 2010-06-24 10:40:56 By : LuckyStar
 


 

No. 2



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



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

ก็ทำ <form> ครอม table นั้นครับแล้วกำหนดตัวแปรเป็นแบบ array ดูเช่น
Code (PHP)
<input type="text" name="name[]" value="">
<input type="text" name="name[]" value="">

แล้วคุณลอง print_r ($_POST) หรือ $_GET ขึ้นอยู่กับว่าคุณกำหนดส่งเป็นแบบไหนอ่ะครับแล้วจะเห็นทางเก็บตัวแปรครับ


น่าจะเป็นแนวทางได้นะครับลองดู
Date : 2010-06-24 10:51:52 By : oxygenyoyo
 

 

No. 3



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

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

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


ตามข้างบนครับ ทำเป็น array
Date : 2010-06-24 10:53:39 By : ไวยวิทย์
 


 

No. 4



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



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


ถ้าจะยังไม่เข้าใจคำถามของผมนะครับ อาจจะเป็นที่ผมอธิบายแล้วเท่าไม่เข้าใจกัน นะครับ ต้องขออภัยไว้ด้วยนะครับ T_T

งั้นผมขออธิบายให้อีกนิดนะครับ จะได้เข้าใจคำถามของผมมากขึ้นนะครับ
คือ ว่า ผมได้สั่ง วน loop โดย ใช้ Form ส่งค่า ท่านจะเห็นได้ จาก การทำงานของ Textbox รับ ขอมูลครับ ดังนั้น ในหน้า Page นี้ ผมจึงมี Form ไปแล้ว 1 Form คือ Form ที่ ใช้ส่งค่า Textbox เพื่อกำหนด ใช้ Textbox รับค่า ขึ้นมากี่บรรทัด นั้นเอง ครับ พอจะมองภาพออกนะครับ ทีนี้ หลักการคือ รับ ค่า มาแล้ว นำไปวน loop แล้วสร้าง จำนวน Textbox รับ ดังจะเห็นในรูปที่ 2 นะครับ

ทีนี้ ปัญหาก็คือ ผมไม่สามารถส่งค่าไปยังอีก page ได้ เนื่องจากยังงงอยู่ว่าจะส่งค่ายังไง เพื่อให้ข้อมูล ทั้ง หน้า Page แรก ไป Page ที่สอง โดยที่ ข้อมูล ที่อยู่ใน Page 1 ที่ได้กรอก นี้ ถูกส่งไป Page 2 ทั้งหมด นี้คือสิ่งที่ผมส่งสัย ครับ ว่า ผมจะนำวิธีใดมาใช้ ในการส่งค่าไปยัง Page ที่ 2 ดี ครับ ขอช่วยแนะนำนะกันเยอะๆๆๆนะครับ ขอคุณสำหรับคำแนะนำที่ทุกท่านได้แนะนำมานะครับ
Date : 2010-06-24 11:07:25 By : SOUL
 


 

No. 5



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

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

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


คือคุณจะบอกว่า ตรงจำนวนแถวนี้ อยู่ใน form1 แล้วพอใส่ค่าแล้วกด OK เหมือนในภาพคือ 10

ก็จะสร้างออกมา 10 แถว ตามในภาพที่สองใช่ไหมครับ

แล้วทีนี้คุณจะส่งค่า ของ 10 แถวที่สร้างมา พร้อมกับ จำนวนแถวที่ อยู่ใน form1 ไปด้วยกันใช่ไหม



คำถามงงมากมาย
Date : 2010-06-24 11:34:06 By : ไวยวิทย์
 


 

No. 6



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



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


Code
คือคุณจะบอกว่า ตรงจำนวนแถวนี้ อยู่ใน form1 แล้วพอใส่ค่าแล้วกด OK เหมือนในภาพคือ 10

ก็จะสร้างออกมา 10 แถว ตามในภาพที่สองใช่ไหมครับ

ตรงนี้ถูกต้องเลยครับ แต่ในหน้า Page นี้ยังมี การรับข้อมูลอีกครับ เลยงงว่าจะส่งค่าไปยังไง ครับ ขอคำชี้แนะด้วยครับ
Date : 2010-06-24 13:01:53 By : SOUL
 


 

No. 7



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



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

เอาแบบง่ายๆไม่ซับซ้อนเลยนะ

Code (PHP)
<form name="form1" id="form2" action="<? echo $PHP_SELF; ?>" method="post">
<input type="text" name="rows" id="rows" value="<? echo $_POST['rows']; ?>" />
<input type="submit" name="button2" id="button2" value="OK">
</form>
<form name="form2" id="form2" action="recive.php" method="post">
<input type="hidden" name="row" id="row" value="<? echo $_POST['rows']; ?>" />
<table border="1" cellpadding="2" cellspacing="0">
<tr>
	<td>No.</td>
    <td>Description.</td>
    <td>Supplier Name.</td>
    <!-- อะไรต่อก็ว่าไป -->
</tr>
<?
for($i=0;$i<$_POST['rows'];++$i){
	?>
    <tr>
    	<td><? echo $i; ?></td>
        <td><input type="text" name="desdription<? echo $i; ?>" id="desdription<? echo $i; ?>" /></td>
        <td><input type="text" name="supply<? echo $i; ?>" id="supply<? echo $i; ?>" /></td>
        <!-- อะไรต่อก็ว่าไป -->
    </tr>
    <?
}
?>
</table><br>
<input type="submit" name="button3" id="button3" value="Submit">
</form>


หน้า recive.php

Code (PHP)
<?
for($i=0;$i<$_POST['row'];++$i){
	echo $i.", ".$_POST['desdription'.$i].", ".$_POST['supply'.$i] /* อะไรต่อก็ว่าไป */ ."<br>";
}
?>

Date : 2010-06-24 13:04:19 By : tinthai
 


 

No. 8



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



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


อย่างที่คุณเขียน ประกอบด้วยกัน สอง Form 2 Form ดังนั้น การ submit ก็ต้องทำถึงสองครั้ง ใช่ป่าวครับ
หากว่ามี การรับค่าข้อมูลอื่นๆๆอีก อย่าง From ที่เห็นแบบนี้ละครับ อันนี้เป็น page รับข้อมูลทั้งหมดหน้านี้นะครับ
333

ทีนี้ถ้าผมทำตามที่ ถิ่นไทย บอก นั้นหมายความว่า หน้านี้จะ มี submit สอง ปุ่ม และแต่ละปุ่มแยกจากกัน ซึ่ถ้าอย่างนั้นมันจะเกิดปัญหาว่า ถ้าผมได้กรอกขอมูลส่วนบน ก่อน แล้ว ก็มากรอก จำนวน แถวเพื่อที่ จะใส่รายการ เมื่อผม กด submit มันก็จะส่งค่า ไปสร้าง จำนวนแถวให้ อย่างที่เห็นในภาพที่สองด้านบน แต่สิ่งที่หายไปคือ ค่าที่เราได้กรอกไปตั้งแต่ต้นแล้ว เหตุตรงนี้จึงทำให้ผมเกิดความสับสนว่าผมควรจะทำอย่างไร เพื่อไม่ให้ หลังจากที่เรา กำหนด จำนวน แถวที่รับข้อมูลแล้วมีปัญว่า ข้อมูลที่กรอกไปด้านบนหาย ครับ แฮๆๆๆๆๆ ขออภัยนะครับที่ทำให้งงกัน ครับ กับคำถามผมครับ แต่อย่างไรก็ขอคำแนะนำเพิ่มเติมหน่อยครับ
Date : 2010-06-24 14:12:20 By : SOUL
 


 

No. 9



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



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

คุณดูตรง form แรกนะครับที่ผมให้ค่ากับ textbox ที่ชื่อ rows แบบนี้ต่อให้คุณกดปุ่ม submit เป็นล้านครั้งขอมูลที่อยู่ใน textbox ที่ชื่อ rows ก็ไม่มีวันหาย
ทำนองเดียวกันถ้าคุณต้องการให้ข้อมูลข้างบนยังอยู่ ก็แค่ทำให้ form ข้างบนเป็น form เดียวกันกับ form ที่ใช้กำหนดจำนวนแถว แล้วก็ให้ค่าต่างๆเหมื่อกับที่ผมให้ค่ากับ textbox ที่ชื่อ rows

ที่คุณบอกว่าไม่ต้องการให้มีปุ่ม submit 2 ปุ่ม.... แล้วคุณจะส่งค่าไปอีกหน้ายังไง
Date : 2010-06-24 14:37:56 By : tinthai
 


 

No. 10



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

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

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

ก็ submit แค่ครั้งเดียวสิคะ ใช้ form เดียวก็พอ

ในส่วนของการสร้าง row ก็ใช้ javascript สร้างเอา ไม่จำเป็นต้อง submit ถึงสองครั้ง
Date : 2010-06-24 14:43:28 By : ultrasiam
 


 

No. 11



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



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

ใช้ javascript ครับให้ใส่แถวเท่าไรก็ใส่ไปเลยแล้วเอาค่านั้นเอาไปวนลูปสร้าง บรรทัดใน table

เพราะผมเคยทำอยู่ โดยกำหนดปุ่มตรงที่ให้รับค่า row นั้นเป็น type button แล้วก็ใส่ event onclick ไป


บอกแนวคิดให้แต่ถ้าคุณไม่เคยเขียน javascript เลยก็ลองหาดูครับไม่ได้จริงๆผมจะไกด์ให้อีกที
Date : 2010-06-24 14:48:02 By : oxygenyoyo
 


 

No. 12



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



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

ถ้าคุณสามารถเขียน javascript ได้ก็ตามทั้งสองท่านบอก
แต่ถ้าไม่เป็นก็ต้องมี 2 form ครับ
Date : 2010-06-24 14:51:28 By : tinthai
 


 

No. 13



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



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


อืมผมจะลองดูครับ ขอบคุณครับ สำหรับ การ ตอบคำถามครับ
Date : 2010-06-24 15:04:18 By : SOUL
 


 

No. 14



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



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


อันนี้เป็นส่วนของ java script นะครับ

Code (PHP)
<script language="javascript">
		function fncCreateElement(){
			
		   var mySpan = document.getElementById('mySpan');
			
		   /*var myElement1 = document.createElement('<input type="text" name="txt[]">');
		   myElement1.setAttribute('id',"txt1");
		   mySpan.appendChild(myElement1);*/

		  
		   
		    var myElement1 = document.createElement('input');
		   myElement1.setAttribute('type',"txt");
		   myElement1.setAttribute('Sequence',"txt[]");
		   
		   //myElement1.setAttribute('id',"txt[]");
		   mySpan.appendChild(myElement1);	

			//*** Remove Element ***//
			/*
			var deleteEle = document.getElementById('txt1');
			mySpan.removeChild(deleteEle);
			*/

		   var myElement2 = document.createElement('<br>');
		   mySpan.appendChild(myElement2);
		   
		   
		}
	</script>	

ส่วนนี้เป็นสวนที่สองนะครับ ทีนี้ ผมงงว่า ถ้าผมมี colum มากกว่า 1 แบบนี้ ผมควรเพิ่มตรงไหน ครับ ใน javascript ครับ ขอให้ช่วยแนะนำเพิ่มหน่อยครับ
Code (PHP)
 <input name="btnButton" id="btnButton" type="button" value="Create" onClick="JavaScript:fncCreateElement();"> <span id="mySpan"></span>

Date : 2010-06-24 15:48:33 By : SOUL
 


 

No. 15



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

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

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

มีอีกแบบค่ะ ลองดูนะคะ

Code (PHP)
<p>
  <input type="text" id="row_tb" name="row_tb" />
  <input type="button" name="Button" value="Insert" onclick="loop_insert()" />
</p>
<table id="myTable" width="50%" border="1" cellspacing="0" cellpadding="0">
  <tr>
    <td>No</td>
    <td>Name</td>
    <td>Surname</td>
  </tr>
</table>

<script>
function loop_insert(){
var num=document.getElementById('row_tb').value
	for(i=1;i<=num;i++){
		insert_row()
	}
}

function insert_row(){
var myTable=document.getElementById('myTable')
var current_row=document.getElementById('myTable').rows.length
var x=myTable.insertRow(current_row)		// insert new row
var y=myTable.rows				// get attribute of row
var a=x.insertCell(0)			// assign position of cell 1 in new row
var b=x.insertCell(1)			// assign position of cell 2 in new row
var c=x.insertCell(2)			// assign position of cell 3 in new row
	a.innerHTML=current_row
	b.innerHTML="<input type='text' name='name[]' />"
	c.innerHTML="<input type='text' name='surname[]' />"
}
</script>

Date : 2010-06-24 16:05:29 By : ultrasiam
 


 

No. 16



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



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


ขอบคุณมากๆๆๆๆๆครับ คุณ ultrasiam คำแนะนำของคุณมีประโยนช์มากครับ ต่อการศึกษาของผม ข้าน้อยขอคารวะ ครับ มีการใดที่ผมช่วยได้ ติดต่อมาทางนี้ได้นะครับ [email protected] ขอบคุณมากๆๆๆครับ
Date : 2010-06-24 16:23:22 By : SOUL
 


 

No. 17



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

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

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

ยินดีค่ะ เรื่องเล็กน้อย...ยังไงก็ลองศึกษาเพิ่มเติมดูนะคะ ให้ไว้เป็นแนวทาง
เมื่อก่อนใช้ประจำ แต่เดี๋ยวนี้เปลี่ยนมาใช้ dhtmlxGrid แทน
Date : 2010-06-24 16:34:32 By : ultrasiam
 


 

No. 18



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



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


อีกนิด1 ครับ ผมได้ทำแล้วนะครับ แต่ว่าตรงที่ run แถวอะครับ มีปัญหาว่ามันเริ่มที่สอง ตลอดเลย มันไม่ยอม runที่เลข 1 อะครับ
Date : 2010-06-24 17:24:13 By : SOUL
 


 

No. 19



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

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

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

ออ

ิvar current_row=document.getElementById('myTable').rows.length

อันนี้ใช่ไหมคะ

ตรงนั้น มันจะนับจำนวนแถวเดิมที่มีอยู่อะค่ะ ไม่ทราบว่าเดิม(ก่อนที่จะ insert) คุณสร้างตารางไว้กี่แถวคะ

คือการนับแถว กับการระบุตำแหน่ง จะไม่เหมือนกันค่ะ

.rows.length คือการนับจำนวนแถวว่ามีกี่แถว

เริ่มแรกถ้าสร้างไว้เพียง 1 แถว ก็จะเริ่มที่ 1 แล้วพอลูปครั้งต่อไปก็จะนับใหม่ จาก 1 เพิ่มไปอีก 1 ก็จะเป็น 2

ส่วนการระบุตำแหน่ง row ของ table จะเริ่มที่ 0 เหมือนกับ array ค่ะ
Date : 2010-06-24 17:38:23 By : ultrasiam
 


 

No. 20



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



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


ขอคุณครับ ผมพอจะเข้าใจแล้วครับ แล้วเรื่อง dhtmlxGrid ผมเข้าไปศึกษาดูบ้างแล้วแต่ยังไม่ค่อยเข้าใจมากนักครับ อย่างเช่นเรื่องของการใช้โปรแกรม เข้าช่วย ตัวโปรแกรมนี้คือโปรอะไรหรอครับ เพราะผมลองดูในวีโอแล้วงงไม่ค่อยเข้าใจครับ ขออนุญาตถามนะครับ ขอคำชี้แนะด้วยครับ
Date : 2010-06-24 18:08:32 By : SOUL
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
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 03
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2025 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่