개발 Q&A

제목 받아오는 값을 길이를 줄이고 싶은데요.
글쓴이 amkor 작성시각 2013/09/23 14:21:33
댓글 : 6 추천 : 0 스크랩 : 0 조회수 : 15286   RSS
 
일단 view 페이지에서 

<td class=td_c align="center"><?=$o->REG_NAME?></td>

변수를 o 중에서 reg_name만 뽐는 과정입니다. 그런데 제목 길이가 너무 길어서  어느 한도에 길이가 길어지면 

"...."로 처리하는 작업을 하는중입니다.


일단 위에 소스를 이렇게 변경해보았습니다.

 
<td class=td_c align="center"><?=han_cut($o->REG_NAME,8)?></td>
 
함수 han_cut를 통해 8자리가 넘으면  "..."로 표시하는 작업 과정입니다.


han_cut함수 입니다.

<script language="JavaScript">

  function han_cut($val,$cut_len){ 
   $tot_len = strlen($val); 
   $cut_str = substr($val,0,$cut_len); 
   $len = strlen($cut_str); 
  
   for($i=0;$i < $len;$i++){ 
    if(ord($val[$i]) > 127){ 
     $hanlen++; 
    } 
    else{ 
     $englen++; 
    } 
   } 
  
   $cut_gap = $hanlen % 2; 
  
   if($cut_gap == 1){ 
    $hanlen--; 
  
   } 
  
   $length=$hanlen + $englen; 
   if($tot_len > $length){ 
    return substr($val,0,$length)."..."; 
   } 
   else{ 
    return substr($val,0,$length); 
   } 
  }

</script> 

문제는  에러 메세지에 

Fatal error: Call to undefined function han_cut() in /home/domaingolden/html/GD_APP/views/apply/vOneToOneList.php on line 108



이렇게 나오네요.  제가 function 지정을 잘못했나요? 아니면 변수 불러오는 과정에서 잘못되었나요?

답편 부탁드립니다.

감사합니다.











 다음글 글자 자르기가 안됩니다 ㅠ,ㅠ (5)
 이전글 썸네일 질문이요 (8)

댓글

들국화 / 2013/09/23 14:26:56 / 추천 0
php 에서 han_cut이 뭔지 모른다는 말이네요.

자바스크립트네요.
amkor / 2013/09/23 14:29:28 / 추천 0
 그럼 제가 자바스크립트 안에 있는 함수 han_cut 못 읽는다는 말씀이네요. 어느정도 예측은 해보았는데 

왜 못 읽는건지.
변종원(웅파) / 2013/09/23 14:30:48 / 추천 0
자바스크립트로 만든 함수를 php구문안의 함수처럼 호출해서 그렇습니다.

질문 이동합니다.

내용 보니 php함수인데 자바스크립에 들어가 있는 이유는 뭘까요?

매뉴얼에서 헬퍼 만들고 선언하는 부분 참고하셔서 헬퍼에 넣고 사용하세요.
헬퍼에 넣고 로딩한 후라면 지금 올리신 것처럼 처리할 수 있습니다.
맥스 / 2013/09/23 14:33:54 / 추천 0
 저는 그냥 길게 쓰고  CSS 로 처리 합니다.
    min-height: 1.6em;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;

수야디벨 / 2013/09/23 17:13:34 / 추천 0
 저도 맥스님 방법 강추.

그런데, 크로스 브라우징이 안된다는 단점이 있지요.

아마 IE에서 제대로 적용이 안될 텐데 display:block 속성을 추가로 주면 됩니다.

그리고 사용에 따라서 WIDTH값을 추가해서 적정 너비도 정해줄수 있지요


뭐 .. 그런데 스크립트로 하나 만들어 두는것도

괜찮은 방법인거 같긴 하네요 ^^




들국화 / 2013/09/23 17:23:40 / 추천 0
데이타는 필요한 것만 가져오고 사용하는게 맞지 않나 싶네요.

MySQL에서 쿼리로 자르거나, php에서 처리해 주는게 좋을듯 하네요.