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 > สอบถามเกี่ยวกับการค้นหาโดยรับค่ามาหลาย ๆ ค่า Search PHP



 

สอบถามเกี่ยวกับการค้นหาโดยรับค่ามาหลาย ๆ ค่า Search PHP

 



Topic : 111898



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



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




คือผมทำแบบฟอร์มเกี่ยวการเช็คราคาสินค้า ซึ่งในกรณีนี้ผมต้องการค้นหาทีเดียวหลาย ๆ ค่าพร้อมกัน

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

ขอบคุณครับ
Code (PHP)
$keyword[0] = $_POST['keyword0'];
	$keyword[1] = $_POST['keyword1'];
	$keyword[2] = $_POST['keyword2'];
	$keyword[3] = $_POST['keyword3'];
	$keyword[4] = $_POST['keyword4'];
	$keyword[5] = $_POST['keyword5'];
	$keyword[6] = $_POST['keyword6'];
	$keyword[7] = $_POST['keyword7'];
	$keyword[8] = $_POST['keyword8'];
	$keyword[9] = $_POST['keyword9'];
	$keyword[10] = $_POST['keyword10'];
	$arr=array("$keyword[0]","$keyword[1]","$keyword[2]","$keyword[3]","$keyword[4]","$keyword[5]","$keyword[6]","$keyword[7]","$keyword[8]","$keyword[9]","$keyword[10]");
	for($i=0;$i<=11;$i++)
{
	if($arr[$i] == ""){
	}else{
	$sqlprice = "select * from oc_pricelist where PartNo = '$arr[$i]'";
	$pricequery= mysql_query($sqlprice);
	}
}
	$pricequery = mysql_query($sqlprice);
	While($rowprice = mysql_fetch_array($pricequery)){
	$shprice = $rowtag[Price];
	$shpart = $rowtag[PartNo];
	echo "price $shprice no $shpart "; 
	}




Tag : PHP







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2014-10-13 14:14:00 By : Mal2s View : 1115 Reply : 8
 

 

No. 1



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



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


Code (PHP)
<?php
$keyword[0] = $_POST['keyword0'];
$keyword[1] = $_POST['keyword1'];
$keyword[2] = $_POST['keyword2'];
$keyword[3] = $_POST['keyword3'];
$keyword[4] = $_POST['keyword4'];
$keyword[5] = $_POST['keyword5'];
$keyword[6] = $_POST['keyword6'];
$keyword[7] = $_POST['keyword7'];
$keyword[8] = $_POST['keyword8'];
$keyword[9] = $_POST['keyword9'];
$keyword[10] = $_POST['keyword10'];
//$arr=array("$keyword[0]","$keyword[1]","$keyword[2]","$keyword[3]","$keyword[4]","$keyword[5]","$keyword[6]","$keyword[7]","$keyword[8]","$keyword[9]","$keyword[10]");
$in_key = "( '".implode("','", $keyword). "' )";
$sqlprice = "select * from oc_pricelist where PartNo in $in_key ";
echo $sqlprice, "<br>\n"; // echo for check SQL Statement
$pricequery = mysql_query($sqlprice);
While($rowprice = mysql_fetch_array($pricequery)){
	$shprice = $rowtag['Price'];
	$shpart = $rowtag['PartNo'];
	echo "price $shprice no $shpart "; 
}
?>









ประวัติการแก้ไข
2014-10-13 14:25:31
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-10-13 14:23:58 By : Chaidhanan
 


 

No. 2



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



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


ผมดูจาก coding แล้ว ที่แสดงออกมาค่าเดียว เพราะว่า Code (PHP)
$pricequery = mysql_query($sqlprice);
While($rowprice = mysql_fetch_array($pricequery)){
$shprice = $rowtag[Price];
$shpart = $rowtag[PartNo];
echo "price $shprice no $shpart "; 
}
อยู่นอก loop for ครับ โดยอาจจะย้ายไปไว้ใน loop for ก็ได้ หรืออีกวิธีหนึ่งคือ นำค่า $_POST แล้ววนลูปเพื่อเอา value มาต่อ string ให้เป็นแบบตัวอย่าง $str = "'1','2','3','4','5','6'"; เป็นต้น แล้วนำ string ดังกล่าวมาใช้ใน SQL โดยใช้คำสั่ง IN ครับ
Code (PHP)
$sqlprice = "select * from oc_pricelist where PartNo IN (" . $str . ")";
$pricequery = mysql_query($sqlprice);
while($rowprice = mysql_fetch_array($pricequery)){
   $shprice = $rowtag[Price];
   $shpart = $rowtag[PartNo];
   echo "price $shprice no $shpart "; 
}

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-10-13 14:30:45 By : Pangpondpuen
 

 

No. 3



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



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


ตอบความคิดเห็นที่ : 2 เขียนโดย : Pangpondpuen เมื่อวันที่ 2014-10-13 14:30:45
รายละเอียดของการตอบ ::
ขอบคุณทั้ง 2 ท่านครับตอนนี้ได้เรียบร้อยแล้ว.

ตอบความคิดเห็นที่ : 1 เขียนโดย : Chaidhanan เมื่อวันที่ 2014-10-13 14:23:58
รายละเอียดของการตอบ ::
ขอบคุณทั้ง 2 ท่านครับตอนนี้ได้เรียบร้อยแล้ว

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-10-13 14:50:53 By : Mal2s
 


 

No. 4



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



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


สอบถามเพิ่มเติมครับ
1. หากผมต้องการเอาราคาที่ได้มาคูณจำนวนที่กรอกหน้าฟอร์ม
2. เอาผลรวมทั้งหมดที่ได้จากข้อ 1 มาแสดง
Code (PHP)
<?php
$keyword[0] = $_POST['keyword0'];
$keyword[1] = $_POST['keyword1'];
$keyword[2] = $_POST['keyword2'];
$keyword[3] = $_POST['keyword3'];
$keyword[4] = $_POST['keyword4'];
$qty[0] = $_POST['qty0'];
$qty[1] = $_POST['qty1'];
$qty[2] = $_POST['qty2'];
$qty[3] = $_POST['qty3'];
$qty[4] = $_POST['qty4'];
//รับค่า qty ตรงนี้ต้องเขียนแบบ $in_key หรือเปล่าครับ
$in_key = "( '".implode("','", $keyword). "' )";
$sqlprice = "select * from oc_pricelist where PartNo in $in_key ";
echo "<div align='center' style='width:300px auto;'><table width='300' border='1'><tr>\n";
	echo "<th width='120'> <div align='center'>รหัสสินค้า</div></th>\n";
	echo "<th width='60'> <div align='center'>จำนวน</div></th>\n";
	echo "<th width='60'> <div align='center'>ตัวละ</div></th>\n";
	echo "<th width='60'> <div align='center'>ราคา</div></th>\n";
	echo "</tr>\n";
$pricequery = mysql_query($sqlprice);
While($rowprice = mysql_fetch_array($pricequery)){
	$shprice = $rowprice['Price'];
	$shpart = $rowprice['PartNo'];
	//$shsum = ??? ตรงนี้ต้องการราคาที่ได้จากฐานข้อมูล * จำนวน
	echo "<tr><td><div align='center'>$shpart</div></td>\n";
	//$shqty เป็นการดึงค่าจำนวนที่เรากรอกที่หน้าฟอร์ม
	echo "<td><div align='center'>$shqty</div></td>\n";
	echo "<td><div align='center'>$shprice</div></td>\n";
	echo "<td><div align='center'>$shsum</div></td>\n";
	echo "</tr>\n";
	}
	$vat = $shsum*7/100;
	$total += $shsum+$vat;
	echo "<tr><th align='center'>ราคาทั้งหมด</th>\n";
	echo "<th align='right' colspan='3'>$shsum</th></tr>\n";
	echo "<tr><th align='center'>VAT 7%</th>\n";
	echo "<th align='right' colspan='3'>$vat</th></tr>\n";
	echo "<tr><th align='center'>รวมทั้งสิ้น</th>\n";
	echo "<th align='right' colspan='3'>$total</th></tr>\n";
	echo "</table></div>\n";
	?>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-10-13 15:46:12 By : Mal2s
 


 

No. 5



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



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


$shsum = $qty[ array_search( $shpart , $keyword ) ] * $shprice;




ปล. ออกแบบ HTML ใหม่ดีกว่าครับ

<input type=text name="keyword[]" value=k1 ><input type=text name="qty[]" value=1 >
<input type=text name="keyword[]" value=k2 ><input type=text name="qty[]" value=2 >
<input type=text name="keyword[]" value=k3 ><input type=text name="qty[]" value=3 >

กำหนดให้เป็น array เลยครับตอนส่งมา ก็จะเป็น array ไม่ต้องมากำหนดใหม่


ประวัติการแก้ไข
2014-10-13 17:19:30
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-10-13 17:16:09 By : Chaidhanan
 


 

No. 6



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



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


ตอบความคิดเห็นที่ : 5 เขียนโดย : Chaidhanan เมื่อวันที่ 2014-10-13 17:16:09
รายละเอียดของการตอบ ::
ไม่ทราบว่าต้องแก้ตรงไหนเหรอครับ ขอแนวทางหน่อยครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-10-13 17:42:36 By : Mal2s
 


 

No. 7



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



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


ตัวอย่างก็เขียนให้แล้วไงครับ tag input ของ form กรอกข้อความ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-10-13 17:54:11 By : Chaidhanan
 


 

No. 8



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



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


ตอบความคิดเห็นที่ : 7 เขียนโดย : Chaidhanan เมื่อวันที่ 2014-10-13 17:54:11
รายละเอียดของการตอบ ::
ขอบคุณมากครับ ทำได้แล้ว

Code (PHP)

ขอโพสไว้เผื่อใครอาจจะอยากทำแบบคล้าย ๆ กันไว้เป็นแนวทาง
<div align='center' style='width:300px auto;'>
 <table width='300' border='1'>
 <tr>
  <th width='120' align="center">รหัสสินค้า</th>
  <!--<th width='210' align="center">รายละเอียด</th>-->
  <th width='60' align='center'>จำนวน</th>
  <th width='60' align='center'>ตัวละ</th>
  <th width='60' align='center'>ราคา</th>
 </tr>
    <?php
	$count = $_POST['keyword'];
	$Countkey = sizeof($count);
	for($i=0;$i<$Countkey;$i++){
	$Countqty = $qty[$i];
	$sqlprice = "select * from oc_pricelist where PartNo = '$keyword[$i]' ";
	$pricequery = mysql_query($sqlprice);
	$rowprice = mysql_fetch_array($pricequery);
	//$Description = $rowprice['Description'];
	$Price = $rowprice['Price'];
	$Showprice = number_format($Price);
	$Showpart = $rowprice['PartNo'];
	$QtyPrice = $qty[ array_search( $Showpart , $keyword ) ] * $Price;
	$Sumprice = number_format($QtyPrice, 2, '.', ',');
	$SumQty += (int)$QtyPrice;
	$Sumtotal = number_format($SumQty, 2, '.', ',');
	echo "<tr><td align='center'>$Showpart</td>\n";
	//echo "<td align='center'>$Description</td>\n";
	echo "<td align='center'>$Countqty</td>\n";
	echo "<td align='center'>$Showprice</td>\n";
	echo "<td align='right'>$Sumprice</td>\n";
	echo "</tr>\n";
}
	$Vat = $SumQty*7/100;
	$Total += $SumQty+$Vat;
	$NetTotal = number_format($Total, 2, '.', ',');
	$NetVat = number_format($Vat, 2, '.', ',');
	?>
	<tr><th align='center'>ราคาทั้งหมด</th>
	<th align='right' colspan='4'><?php echo $Sumtotal; ?></th></tr>
	<tr><th align='center'>VAT 7%</th>
	<th align='right' colspan='4'><?php echo $NetVat; ?></th></tr>
	<tr><th align='center'>รวมทั้งสิ้น</th>
	<th align='right' colspan='4'><?php echo $NetTotal; ?></th></tr>
	</table></div>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-10-13 23:03:44 By : Mal2s
 

   

ค้นหาข้อมูล


   
 

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