2010-08-10 4 views

답변

1

클라이언트 측 스크립트의 일종으로이 작업을 수행 할 수 있습니다. 몇 가지 JavaScript 또는 DHTML 옵션이 있습니다. 이러한 작업은 사용자 (대부분의 컴퓨터에서 어쨌든)에서 훨씬 빠르게 실행되고 데이터베이스에 대한 불필요한 히트를 피할 수 있습니다. 나는 보았다 마지막이 생각 : http://www.kryogenix.org/code/browser/sorttable/

그러나 당신은 당신의 SQL 쿼리와 함께 그 일을 정말 관심이 있다면 ... 그래서 당신은, 비슷한 결과 테이블이 있습니다

<table> 
<tr> 
<th><a href='page.php?orderby=name'></th> 
<th><a href='page.php?orderby=blah'></th> 
.... 
</table> 
을 당신은 $ _REQUEST 값을 확인 한 가정이 한 간단

<?php 
$sql = "select * from sometable"; 
switch ($_REQUEST['orderby']) { 
    case "name": $sql .= " order by name"; break; 
    case "blah": $sql .= " order by blah"; break; 
    default: $sql .= " order by whatevercolumnyouwantasdefault"; 
} 
... 
?> 

심지어 뭔가 그들이 합법적 인 결정 : 쿼리를 생성 할 때

그런 다음, 당신은 단순히 같은 뭔가를 할 수

<?php 
$sql = "select * from sometable"; 
if (isset($_REQUEST['orderby'])) 
    $sql .= " order by ".$_REQUEST['orderby']; 
else 
    $sql .= " order by whatevercolumnyouwantasdefault"; 
?> 
+0

javascript 방식은 내가 찾고있는 방식입니다. 이것은 처음으로 정렬 가능한 테이블을 만들려고합니다. – scott77777

0

아마 배열의 일종의 결과를 저장할 수 있습니다.

편집 : 그렇지 않으면 JavaScript를 사용하여 페이지를 새로 고침하지 않고도 테이블을 정렬 할 수 있습니다. 이 작업을 수행 할 수있는 jQuery plugin입니다.

+0

어떻게 든 배열에 결과를 저장하고 PHP로 정렬하는 방법을 생각했지만 속도가 다른 방법과 비교할 수 있을지 확신하지 못했습니다. – scott77777

관련 문제