TIP

여분필드 쪼개기와 list, write, view에 출력하기.

여분필드 wr_1을 10개로 쪼개서 list, write, view에 출력하기 예제.


write.skin.php

============= 

[code]add_stylesheet('<link rel="stylesheet" href="'.$board_skin_url.'/style.css">', 0);

하단에 아래 내용 추가.


// 여분필드

$wr_1 = explode("|",$write["wr_1"]);

$wr_1_1 = $wr_1[0];

$wr_1_2 = $wr_1[1];

$wr_1_3 = $wr_1[2];

$wr_1_4 = $wr_1[3];

$wr_1_5 = $wr_1[4];

$wr_1_6 = $wr_1[5];

$wr_1_7 = $wr_1[6];

$wr_1_8 = $wr_1[7];

$wr_1_9 = $wr_1[8];

$wr_1_10 = $wr_1[9];


원하는 곳에 

<input type="text" name="wr_1_1" value="<?php echo $wr_1_1 ?>" id="wr_1_1" class="frm_input">

이런 식으로 작성


셀렉트박스일 경우

<option value="내용1" <?=($wr_1_1 == "내용1")?'selected':'';?>>내용1</option>

이런 식으로 작성[/code]


view.skin.php

============= 

[code]add_stylesheet('<link rel="stylesheet" href="'.$board_skin_url.'/style.css">', 0);

하단에 아래 내용 추가.


// 여분필드

$wr_1 = explode("|",$write["wr_1"]);

$wr_1_1 = $wr_1[0];

$wr_1_2 = $wr_1[1];

$wr_1_3 = $wr_1[2];

$wr_1_4 = $wr_1[3];

$wr_1_5 = $wr_1[4];

$wr_1_6 = $wr_1[5];

$wr_1_7 = $wr_1[6];

$wr_1_8 = $wr_1[7];

$wr_1_9 = $wr_1[8];

$wr_1_10 = $wr_1[9];


원하는 곳에 

<?php echo $wr_1_1 ?>

이런 식으로 작성[/code]


list.skin.php

============ 

[code]        <?php

        for ($i=0; $i<count($list); $i++) {

         ?>

하단에 아래 내용 추가.


        <?php

        $wr_1 = explode("|",$list[$i]["wr_1"]);

        $wr_1_1 = $wr_1[0];

        $wr_1_2 = $wr_1[1];

        $wr_1_3 = $wr_1[2];

        $wr_1_4 = $wr_1[3];

        $wr_1_5 = $wr_1[4];

        $wr_1_6 = $wr_1[5];

        $wr_1_7 = $wr_1[6];

        $wr_1_8 = $wr_1[7];

        $wr_1_9 = $wr_1[8];

        $wr_1_10 = $wr_1[9];

         ?>


원하는 곳에 

<?php echo $wr_1_1 ?>

이런 식으로 작성[/code]


write_update.skin.php

==================== 

에 아래 내용 입력.


[code]<?php

if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가

$wr_1 = "$wr_1_1|$wr_1_2|$wr_1_3|$wr_1_4|$wr_1_5|$wr_1_6|$wr_1_7|$wr_1_8|$wr_1_9|$wr_1_0|"; 

$sql1 = " update $write_table set wr_1 = '$wr_1' where wr_id = '$wr_id' ";

sql_query($sql1);

?>[/code]

write_update.skin.php 이 없다면 파일 만든 후 위 내용 첨부.

10개 이상 여분필드 추가하기

phpMyAdmin 접속 후 해당 게시판 테이블에 wr_10 다음에 원하는 만큼 필드 추가.


write_update.skin.php

====================

[code]<?php

if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가

$sql = " update $write_table

            set wr_11 = '$wr_11',

                 wr_12 = '$wr_12',

                 wr_13 = '$wr_13',

                 wr_14 = '$wr_14'

          where wr_id = '$wr_id' ";

sql_query($sql);

?>[/code]

이런식으로 추가.


write.skin.php

=============

원하는 곳에

[code]<input type="text" name="wr_11" value="<?php echo $write['wr_11'] ?>" id="wr_11" class="frm_input" size="20">[/code]

이런식으로 작성


value 값을 넣을 때 반드시 <?php echo $write['wr_11'] ?> 이렇게 해야함.

<?php echo $wr_11 ?> 이렇게만 수정후 저장이 안됨.


최신글과 게시판 리스트에서 게시물 본문 불러내서 글자 자르기

[code]<?php

echo cut_str(strip_tags($list[$i]['wr_content']), 250);

?>[/code]기본. 

줄 바꿈 안됨.


[code]<?php

$list[$i]['wr_content'] = strip_tags($list[$i]['wr_content'], "<p>"); 

echo mb_substr($list[$i]['wr_content'], 0, 250, 'utf-8');

?>[/code]줄바꿈 됨.


[code]<?php

$list[$i]['wr_content'] = strip_tags($list[$i]['wr_content'], "<p>"); 

echo cut_str($list[$i]['wr_content'], 250);

?>[/code]줄바꿈 되고 글자수 넘을시 ... 처리

게시판 글 등록시 비회원 메일 안 적은 사람 관리자에게 문자 안 올 때 해결 방법

/bbs/write_update.php

======================


[code]// 옵션에 메일받기가 체크되어 있고, 게시자의 메일이 있다면

if (strstr($wr['wr_option'], 'mail') && $wr['wr_email'])

    $array_email[] = $wr['wr_email'];


위 내용 바로 위에


if (!$wr_email) {

    $wr_email = $config['cf_admin_email'];

}

추가[/code]

숫자만 입력받기 예제

[code]<tr> 

    <th scope="row"><label for="wr_1"><span class="sound_only">번호입력</span><i class="fa fa-address-card" aria-hidden="true"></i> 번호입력</label></th>

    <td><input type="text" name="wr_1" value="<?php echo $wr_1 ?>" id="wr_1" required class="frm_input required" size="50" maxlength="4" placeholder="차량번호"onkeydown='return onlyNumber(event)' onkeyup='removeChar(event)' style='ime-mode:disabled;'> &nbsp;&nbsp;&nbsp;&nbsp;숫자 4자리만 써주세요.</td>

</tr>


<script>

function onlyNumber(event){

event = event || window.event;

var keyID = (event.which) ? event.which : event.keyCode;

if ( (keyID >= 48 && keyID <= 57) || (keyID >= 96 && keyID <= 105) || keyID == 8 || keyID == 46 || keyID == 37 || keyID == 39 ) 

return;

else

return false;

}

function removeChar(event) {

event = event || window.event;

var keyID = (event.which) ? event.which : event.keyCode;

if ( keyID == 8 || keyID == 46 || keyID == 37 || keyID == 39 ) 

return;

else

event.target.value = event.target.value.replace(/[^0-9]/g, "");

}

</script>[/code]

검색