ช่วยดูระบบค้นหาแบบหลายเงื่อนขัย ให้ทีครับ

ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา ช่วยดูระบบค้นหาแบบหลายเงื่อนขัย ให้ทีครับ

ช่วยดูระบบค้นหาแบบหลายเงื่อนขัย ให้ทีครับ

 

	  	$sql="select * from tb_product where (name_prd like '%".$_POST['name_prd']."%' or model_prd like '".$_POST['model_prd']."' and manner_prd='".$_POST['manner']."' and year_prd='".$_POST['YY']."' and price_prd BETWEEN '".$_POST['price_prd']."' AND '".$_POST['price_prd2']."') ";

ยังงงๆ กับมัน อยู่ เพราะ search ข้อมูลมันก็ออกมาหมดเลย 



Srenon 114.128.199.xxx 29-04-2010 15:20:36

คำแนะนำ และการใช้งาน

สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก


  • ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ
  • เปลี่ยน


    ( หรือ เข้าใช้งานผ่าน Social Login )

 ความคิดเห็นที่ 1

ให้ดูการกำหนดวงเล็บ เรื่องการจัดตำแหน่ง ลองกำหนดตามด้านล่างดู

$sql="select * from tb_product where (name_prd like '%".$_POST['name_prd']."%') AND (model_prd like '".$_POST['model_prd']."') AND (manner_prd='".$_POST['manner']."') AND (year_prd='".$_POST['YY']."') AND (price_prd BETWEEN '".$_POST['price_prd']."' AND '".$_POST['price_prd2']."') ";

หรือใช้วิธีการกำหนดให้อ่าน หรือแก้ไขง่ายด้วย การต่อตัวแปร $sql

$sql="select * from tb_product where (name_prd like '%".$_POST['name_prd']."%') ";
$sql.=" AND (model_prd like '".$_POST['model_prd']."') ";
$sql.=" AND (manner_prd='".$_POST['manner']."') ";
$sql.=" AND (year_prd='".$_POST['YY']."')  ";
$sql.=" AND (price_prd BETWEEN '".$_POST['price_prd']."' AND '".$_POST['price_prd2']."') ";

 



ninenik 124.120.179.xxx 29-04-2010
 ความคิดเห็นที่ 2

ใส่วงเล็บกับไม่ใส่ มีผลต่างกันยังงัย ครับ ผมลองไม่ใส่ ผลออกมามันก็เหมือนกัน



srenon 114.128.54.xxx 29-04-2010 19:17
 ความคิดเห็นที่ 3

ผลของการใส่วงเล็บ หรือการจัดกลุ่มของวงเล็บ มีผลต่อการตรวจสอบเงื่อนไขของโปรแกรม
ตามหลักตรรกะ True หรือ False ตัวอย่าง
T=True ,F=False

ตัวอย่างที่ 1..... T OR F AND F AND F AND F =T
ตัวอย่างที่ 2.....(T OR F) AND F AND F AND F =F
ตัวอย่างที่ 3.....(T OR F) AND (F AND F AND F)=F
ตัวอย่างที่ 4.....T OR (F AND F AND F AND F)=T

ตัวอย่างที่ 1 กับตัวอย่างที่ 4
น่าจะตอบคำถามที่ว่า
 " ใส่วงเล็บกับไม่ใส่ มีผลต่างกันยังงัย ครับ ผมลองไม่ใส่ ผลออกมามันก็เหมือนกัน "

หรือแม้กรณีอื่นๆ ทั่ง 4 กรณี มีทั้งเหมือนและแตกต่างกัน



ninenik 124.120.169.xxx 30-04-2010
1






เว็บไซต์ของเราให้บริการเนื้อหาบทความสำหรับนักพัฒนา โดยพึ่งพารายได้เล็กน้อยจากการแสดงโฆษณา โปรดสนับสนุนเว็บไซต์ของเราด้วยการปิดการใช้งานตัวปิดกั้นโฆษณา (Disable Ads Blocker) ขอบคุณครับ