2009-10-24 1 views
0

다음과 같은 클래스를 사용하여 내 홈페이지에 페이지 매김을 적용한 격자 모양을 표시합니다. 수업은 매우 좋고 잘 작동합니다.[DataGridClass] : 결과 집합의 두 번째 열을 하이퍼 링크로 만드는 방법은 무엇입니까?

격자가 레코드를 보여줄 때 두 번째 열 값을 하이퍼 링크로 만들고 싶습니다. $ c가 업데이트되는 클래스에서 href를 추가하려고 시도했지만 작동하지 않습니다. 누구든지 나를 도울 수 있습니까?

이 클래스는 아래 링크에서 제공되는 "style.css"파일도 사용합니다. 거기에 어떤 변화가 필요합니까? 함수에서 getRows

http://www.webmastergate.com/php/paginate-query-results.html

답변

1

()는 $ C 변수가 설정되는 함수의 맨 마지막 줄 근처. 이 링크가 링크를 추가 할 것인지 여부를 어떻게 든 테스트해야합니다. 그것은 부분적으로 각 행에 사용자 지정 작업을 추가 할 수있는 링크에 추가 할 필요가 없어 - 당신은 키와 콜백 함수

$r = ''; 
    while ($row = mysql_fetch_assoc($result)) { 
     $c = ''; 

     foreach($row as $key=>$field) { 
       //manipulate data here 
      $c .= $this->fmtField($key, $field); 
     } 
     $r .= sprintf($this->rowfmt, $cr ? $classodd : $classeven, $c); 
     $cr = 1 - $cr; 
    } 

내가 추천합니다 또 다른 데이터 그리드가 http://www.eyesis.ca/projects/datagrid.html입니다 저장 다른 연관 배열을 설정하는 것이 좋습니다.

+0

다른 해결책을 가져 주셔서 감사합니다. – RKh

1

수 없습니다. 가능한 해결 방법은 mysql 쿼리의 형식 지정에 책임을 위임 할 수 있습니다.

예를 들어이 같은 쿼리 형식을 지정할 수 있습니다 :

SELECT firstField, 
    concat ('<a href="', secondField, '">', thirdField,'</a>') as link_column, 
    .... 

당신이 URL이 두 번째 필드에 그 가정을하고 세 번째에 해당 링크의 텍스트를 저장. 링크를 만들 이외의 URL을 표시해야하는 경우

또 다른 해결책 (텍스트)을

SELECT firstField, 
    concat ('<a href="', secondField, '">', secondField,'</a>') as link_column, 
    .... 

수 있습니다.

나는 클래스를 숙고하고 행을 단일 열로 처리 할 수 ​​없기 때문에 클래스를 수정하지 않고 다른 해결책이 없다고 생각합니다.

관련 문제