채택완료

형님들..오름차순 내림차순 배열질문드려봅니다.

2016-03-24 (목) 23:19:13 6,610
Copy
<?php$ord_array = array('desc','asc'); // 정렬 방법 (내림차순, 오름차순)$ord_arrow = array('▼','▲'); // 정렬 구분용$ord = isset($_REQUEST['ord']) && in_array($_REQUEST['ord'],$ord_array) ? $_REQUEST['ord'] : $ord_array[0]; // 지정된 정렬이면 그 값, 아니면 기본 정렬(내림차순)$ord_key = array_search($ord,$ord_array); // 해당 키 찾기 (0, 1)$ord_rev = $ord_array[($ord_key+1)%2]; // 내림차순→오름차순, 오름차순→내림차순?>

이것은 정의된거구요.

Copy
<a href="<?php echo $PHP_SELF;?>?id=<?=$id?>&ord=<?php echo $ord_rev; ?>">접수일시<?php echo $ord_arrow[$ord_key]; ?></a><a href="<?php echo $PHP_SELF;?>?id=<?=$id?>&ord=<?php echo $ord_rev; ?>">고객사<?php echo $ord_arrow[$ord_key]; ?></a>

A링크로 해서 리스트부분 뿌리는겁니다.

Copy
$ord=$_REQUEST['ord']; if($ord == "desc") {    $sql_order = " s_company desc";} else if($ord == "asc") {    $sql_order = " s_company asc"; }else {    $sql_order = " w_date desc , s_time desc ";}

했는데 한쪽에만 지금 먹혀있는데 다른쪽에도 먹히게할려면 ord 이름을 또변경하여 다시 작성해야되나요?

답이 없는거같아서 여쭤봐요 ㅠㅠ형님

|

답변 3개 / 댓글 1개

채택된 답변
+20 포인트
2016-03-25 (금) 11:10:37

아 제가 저번에 보면서 이해를 잘못했었네요 

대략 이런식으로 하는게 맞는지 모르겟네요????????

Copy
<?php$ord_array2 = array('desc','asc'); // 접수일시 정렬(내림차순, 오름차순)$ord_array = array('desc','asc'); // 고객사 정렬(내림차순, 오름차순)$ord_arrow = array('▼','▲'); // 정렬 구분용$ord = isset($_REQUEST['ord']) && in_array($_REQUEST['ord'],$ord_array) ? $_REQUEST['ord'] : $ord_array[0]; // 지정된 정렬이면 그 값, 아니면 기본 정렬(내림차순)$ord2 = isset($_REQUEST['ord2']) && in_array($_REQUEST['ord2'],$ord_array2) ? $_REQUEST['ord2'] : $ord_array2[0]; // 지정된 정렬이면 그 값, 아니면 기본 정렬(내림차순)$ord_key = array_search($ord,$ord_array); // 해당 키 찾기 (0, 1)$ord_rev = $ord_array[($ord_key+1)%2]; // 내림차순→오름차순, 오름차순→내림차순$ord_key2 = array_search($ord2,$ord_array2); // 해당 키 찾기 (0, 1)$ord_rev2 = $ord_array2[($ord_key2+1)%2]; // 내림차순→오름차순, 오름차순→내림차순$ord = $_REQUEST['ord']?$_REQUEST['ord']:$ord_array[0];$ord2 = $_REQUEST['ord2']?$_REQUEST['ord2']:$ord_array2[0];$ords = $ord?" s_company ".$ord.":""; //s_company니까 고객사겠지요???$ords2 = $ord2?" s_datetime ".$ord2.":""; //접수일시라고 되어있어서 대략 s_datetime일까해서 적은것입니다if($ords && $ords2){    $sql_order = $ords." , ".$ords2;}elseif($ords || $ords2){    $sql_order = $ords?$rods:$ords2;}else{    $sql_order = " w_date desc , s_time desc ";}?>

<a href="<?php echo $PHP_SELF;?>?id=<?=$id?>&ord=<?php echo $ord_rev; ?>&ord2=<?php echo $ord_rev2; ?>">접수일시<?php echo $ord_arrow[$ord_key2]; ?></a>
<a href="<?php echo $PHP_SELF;?>?id=<?=$id?>&ord=<?php echo $ord_rev; ?>&ord2=<?php echo $ord_rev2; ?>">고객사<?php echo $ord_arrow[$ord_key]; ?></a>

뿌려줄때 변수만 바꿔서 그대로 적용하면 됩니다. 

네 맞습니다. 

답변에 대한 댓글 1개

2016-03-24 (목) 23:32:49
<?php



2
$ord_array = array('desc','asc'); // 정렬 방법 (내림차순, 오름차순)



3
$ord_arrow = array('▼','▲'); // 정렬 구분용



4
$ord = isset($_REQUEST['ord']) && in_array($_REQUEST['ord'],$ord_array) ? $_REQUEST['ord'] : $ord_array[0]; // 지정된 정렬이면 그 값, 아니면 기본 정렬(내림차순)



5
$ord_key = array_search($ord,$ord_array); // 해당 키 찾기 (0, 1)



6
$ord_rev = $ord_array[($ord_key+1)%2]; // 내림차순→오름차순, 오름차순→내림차순



7
?>


정의 부분을 또 중복해서 해야된다는말씀여?

답변을 작성하려면 로그인이 필요합니다.