ออกแบบ table ฐานข้อมูลยังไงหรือครับ ถ้าเป็น table เีดียว จะใช้คำสั่ง query ได้ไม่ยาก
ที่ผมใช้อยู่
รับค่า $x = 'AND 'x' = '".$_POST['x']."';
$y = 'AND 'y' = '".$_POST['y']."';
$z = 'AND 'z' = '".$_POST['z']."';
คำสั่ง sql : $q= 'select * from table where '".$x.$y.$z"';
$qr = mysql_query($q);
อะไรประมาณนี้ พอช่วยได้ไหมครับ
มันควรจะเป็นแบบนี้ล่ะคับ แต่มันจะมี select ที่ไม่ได้เลือกค่ามาด้วย คือค่า "ทุกประเภท" คับ เช่น AND y='ฮอนด้า' กับ AND y='ทุกประเภท' ซึ่งในฐานข้อมูล ไม่มียี่ห้อทุกประเภท
ผมต้องมาลบค่า $y ก่อน query ให้เหลือเฉพาะ where $x.$z
ถ้าเราบังคับให้เลือกก็จบ แต่ความเป็นจริง เราก็ไม่อยากบังคับว่าต้องเลือก
ขอบคุณคับ
ถ้า "ทุกประเภท" ค่า x,y หรือ z ที่ส่งมาไม่มีค่านะครับ
รับค่า if($_POST['x']){$x = 'AND 'x' = '".$_POST['x']."';}else{ $x =''; } //ไม่ส่ง x กรณีไม่มี x ส่งมาให้ $x = '';
if($_POST['y']){$y = 'AND 'y' = '".$_POST['y']."';}else{ $y =''; } //ไม่ส่งค่า y
if($_POST['z']){$z = 'AND 'z' = '".$_POST['z']."';}else{ $z =''; } //ไม่ส่งค่า z
$q= 'select * from table where id '".$x.$y.$z"';
ผมใช้วิธีนี้อยู่ ไอเดียคล้ายท่าน MeenyFancy พี่ post ไว้ข้างบนเลยครับ