จากรูปด้านบนเป็นหน้าเว็บเพจนะค๊ะ ตารางด้านล่างคือข้อมูลในฐานข้อมูลที่นำมาแสดงค๊ะ ส่วนตรง
tag select คือส่วนที่จะกำหนดให้ user เลือกได้ว่าจะ sort by อะไร ก็คือ order by ในโค๊ด php ค๊ะ
โดยใน tag select จะประกอบด้วย
sort by id ( 0 to 9 ) หมายเหตุ ก็คือ $sql = "select * from member order by id asc" ;
sort by id ( 9 to 0 ) หมายเหตุ ก็คือ $sql = "select * from member order by id desc" ;
sort by name ( a to z ) หมายเหตุ ก็คือ $sql = "select * from member order by name asc" ;
sort by name ( z to a ) หมายเหตุ ก็คือ $sql = "select * from member order by name desc" ;
sort by age ( 0 to 9 ) หมายเหตุ ก็คือ $sql = "select * from member order by age asc" ;
sort by age ( 9 to 0 ) หมายเหตุ ก็คือ $sql = "select * from member order by age desc" ;
โดยในการแสดงข้อมูลแบบปกติจะเป็นแบบ
sort by id ( 0 to 9 )
<select name="orderby">
<option value="order by id asc">เรียงลำดับจากน้อยไปมากด้วย ID</option>
<option value="order by id desc">เรียงลำดับจากมากไปน้อยด้วย ID</option>
<option value="order by name asc">เรียงลำดับจากน้อยไปมากด้วย Name</option>
<option value="order by name desc">เรียงลำดับจากมากไปน้อยด้วย Name</option>
<option value="order by age asc">เรียงลำดับจากน้อยไปมากด้วย Age</option>
<option value="order by age desc">เรียงลำดับจากมากไปน้อยด้วย Age</option>
</select>
...
....
.....
$sql = "select * from person '{$_REQUEST["orderby"]}' ";
ขอสอบถามเพิ่มเติมอีกข้อนะค๊ะ คือหลังจากหนูทำการเลือก tag select เป็น id asc แล้วกด ok ข้อมูลก็แสดงมาตามปกติค๊ะ คือ id asc
แต่ตรง tag select กลับแสดงเป็น id desc ( ซึ่งเป็นค่า defualt ) จะทำอย่างไรให้ตรง tag select แสดงตามที่เราเลือกไว้ก่อนหน้านี้ค๊ะ
<select name="orderby">
<option value="order by id asc">เรียงลำดับจากน้อยไปมากด้วย ID</option>
<option value="order by id desc">เรียงลำดับจากมากไปน้อยด้วย ID</option>
<option value="order by name asc">เรียงลำดับจากน้อยไปมากด้วย Name</option>
<option value="order by name desc">เรียงลำดับจากมากไปน้อยด้วย Name</option>
<option value="order by age asc">เรียงลำดับจากน้อยไปมากด้วย Age</option>
<option value="order by age desc">เรียงลำดับจากมากไปน้อยด้วย Age</option>
</select>
<?php
if(isset($_REQUEST["orderby"]) && $_REQUEST["orderby"] !== "")
$orderby = $_REQUEST["orderby"];
else
$orderby = "order by id asc";
$sql = "select * from person $orderby ";
?>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$("select[name='orderby'] [value='<?php echo$_REQUEST["orderby"];?>']").attr({"selected":"selected"});
</script>