2016년 3월 24일 목요일

php 이미지 크기 조절, html 목록 채우기, 시간체크해서 남은시간 감소시키기(javascript포함)


##### php 이미지 크기
http://blog.iramine.com/entry/PHP-%EC%9D%B4%EB%AF%B8%EC%A7%80-%ED%81%AC%EA%B8%B0-%EB%B3%80%ED%99%98

##### db에서 가져온 값으로 목록 표시 / db시간 에서 현재시간 간격체크해서 남은시간 감소해주는 코드
<?
if($results != null) {
?>
<table class="my_list">
<colgroup>
<col style="width:110px ;" />
<col style="width:420px;" />
<col style="width:60px;" />
<col style="width:340px;" />
<col style="width:270px ;" />
</colgroup>
<tbody>
<?
$item = 0;
foreach($results as $row) {
$item ++;
$publish=$row['PUBLISH'];
$cnt=$row['CNT'];
$id=$row['ID'];
$rating1=$row['RATING'];
$createdat1=$row['CREATEDAT'];
$title=$row['TITLE'];
$image=$row['IMAGE'];
$competi_title=$row['COMPETITION_TITLE'];
$competi_id=$row['COMPETITION_ID'];
?>
<tr>
<td><div class="thp_img"><span><img src="<?=$row['IMAGE']?>" width="80" alt=""/></span></div></td>
<td class="tal"><div class="thp_tit">
<span class="stxt"><?=$row['COMPETITION_TITLE']?></span>
<a href="#" class="ttt"><?=$row['TITLE']?></a>
</div>
</td>
<?
if($publish==0) {//게시자 수정가능
?>
<td><span class="t2">심사중</span></td>
<?
} else if($publish==1){//반려
?>
<td><span class="t3">반려</span></td>
<?
} else {//2 : 게시
?>
<td><span class="t1">게시중</span></td>
<?
}
?>
<td>View <strong><?=number_format((Int)$row['CNT'])?></strong>  /  득표수 <strong><?=number_format((Int)$row['RATING'])?></strong> </td>
<?
if($publish==1){//반려
?>
<td><a href="#" class="btn_type5">재신청하기</a><span class="btnt"></span></td>
<?
} else if($publish==0 || $publish==2){//0 : 심사중 2 : 게시
$createdat = strtotime(date($row['CREATEDAT']));
$finish_time = $createdat + (24*60*60);
$now_time = strtotime(date("Y-m-d H:i:s"));
$remaining_time = $finish_time - $now_time;

if($remaining_time > 0) { //수정시간 지났는지..
?>
<td><a href="#" class="btn_type2">수정신청하기</a><span id='timmer<?=$item?>' class="btnt"></span></td>
 <script>
 timmer<?=$item?>(<?=floor($remaining_time)?>, $("#timmer<?=$item?>"));
 </script>
<?
} else {
?>
<td><a href="#" class="btn_type6">수정신청하기</a><span class="btnt"></span></td>
<?
}
}
?>
</tr>
<?

}
?>










function timmer5(remain_time, view_id) {
remain_time5 = remain_time;
view_id5 = view_id;
timer_id5 = setInterval("decreTime5()", 1000);
}

function decreTime5() {
view_id5.html('수정 가능시간 '+ time_format(remain_time5));
if(remain_time5 > 0) remain_time5--;
else {
// 시간이 0이 되었으므로 타이머를 중지함
clearInterval(timer_id5);
// 시간이 만료되고 나서 할 작업을 여기에 작성
// document.form.submit(); // 예: 강제로 form 실행
}
}

function time_format(v) {
                var value;
var h;
var m;
var i;
h = Math.floor(v / (3600));
m = Math.floor( (v-(h*3600)) / 60 );
i = Math.floor(v - (h*3600) - (m*60));
if(h < 10) h = "0" + h;
if(m < 10) m = "0" + m;
if(i < 10) i = "0" + i;
                value = h + ":" + m + ":" + i;
return value;
}



javascript tip

#### a tag에 onclick 붙이기

<a href="#" class="btn_url" onclick="return form_video();">url등록하기</a>

#### 글자수제한
input :
maxlength="20"

textarea :
//글자수 제한 체크
        function len_chk(){
            var frm = document.insertFrm.test;
            if(frm.value.length > 4000){
                alert("글자수는 영문4000, 한글2000자로 제한됩니다.!");
                frm.value = frm.value.substring(0,4000);
                frm.focus();
            }
        }

#### trim() 대체함수

data = data.replace(/(^\s*)|(\s*$)/gi, "");
            if(data=='') {
            alert('글자없음');

            }


#####jquery checkbox 상태 참고
http://hobbiez.tistory.com/321


###### jQuery 로 ajax 처리시 data 형식 중 배열(array)값을 넘기려면 다음과 같이 ajax 처리 전 세팅값을 바꿔 주어야 한다.
jQuery.ajaxSettings.traditional = true;