여분필드 체크박스 이미지 저장 방법?

여분필드 체크박스 이미지 저장 방법?

QA

여분필드 체크박스 이미지 저장 방법?

본문

안녕하세요 질문좀 드리겠습니다.

 

 

예를들어 게시판 글쓰기에서

여분필드를 사용해 체크박스를 만들고 

1. 사자

2. 호랑이

3.기린 

 

이렇게 이미지들을 저장하고 

체크박스 클릭하면 뷰페이지에 이미지를 노출 시키고 싶은데

 

관련 링크나 정보좀 알고 싶습니다

 

이 질문에 댓글 쓰기 :

답변 3

* [스킨 디렉토리]/write.skin.php


<input type="checkbox" name="wr_8[]" value="lion"> 사자<br>
<input type="checkbox" name="wr_8[]" value="tiger"> 호랑이<br>
<input type="checkbox" name="wr_8[]" value="giraffe"> 기린

 

* [스킨 디렉토리]/write_update.head.skin.php


<?php
if (!defined("_GNUBOARD_")) exit;
$wr_8 = implode(',', $wr_8);

 

* [스킨 디렉토리]/view.skin.php


$checked_items = explode(",", $view['wr_8']);
~

아래의 코드를 참고해보세요..

 

1. write.skin.php

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

// 기존 코드 ...

// 여분 필드 체크박스 추가
?>
<div>
    <label>선택 항목:</label><br>
    <input type="checkbox" name="wr_1[]" value="lion"> 사자<br>
    <input type="checkbox" name="wr_1[]" value="tiger"> 호랑이<br>
    <input type="checkbox" name="wr_1[]" value="giraffe"> 기린
</div>

<?php
// 기존 코드 ...
?>
 

2. write_update.php

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

// 기존 코드 ...

// 여분 필드 데이터 저장 처리
if (isset($_POST['wr_1'])) {
    $wr_1 = implode(",", $_POST['wr_1']);
} else {
    $wr_1 = '';
}

// 기존 여분 필드 저장 코드에 추가
$sql = "INSERT INTO {$write_table} (wr_1, ...) VALUES ('$wr_1', ...)";
sql_query($sql);

// 기존 코드 ...
?>
 

3.  view.skin.php

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

// 기존 코드 ...

// 여분 필드 데이터 가져오기
$checked_items = explode(",", $view['wr_1']);

// 이미지 경로 설정
$images = [
    "lion" => "path/to/lion.jpg",
    "tiger" => "path/to/tiger.jpg",
    "giraffe" => "path/to/giraffe.jpg",
];
?>

<div>
    <h3>선택된 항목:</h3>
    <?php foreach ($checked_items as $item): ?>
        <?php if (array_key_exists($item, $images)): ?>
            <img src="<?= $images[$item] ?>" alt="<?= $item ?>">
        <?php endif; ?>
    <?php endforeach; ?>
</div>

<?php
// 기존 코드 ...
?>
 

아래와 같이 적용했는데 저장시 값이 저장이 안되는데 다른이유가 있을까요 ㅠ?

write_update.php
<?php
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가

// 기존 코드 ...

// 여분 필드 데이터 저장 처리
if (isset($_POST['wr_8'])) {
    $wr_8 = implode(",", $_POST['wr_8']);
} else {
    $wr_8 = '';
}

// 기존 여분 필드 저장 코드에 추가
$sql = "INSERT INTO {$write_table} (wr_8, ...) VALUES ('$wr_8', ...)";
sql_query($sql);

// 기존 코드 ...
?>


view.skin.php
// 여분 필드 데이터 가져오기
$checked_items = explode(",", $view['wr_8']);

// 이미지 경로 설정
$images = [
    "lion" => "/img/150.png",
    "tiger" => "path/to/tiger.jpg",
    "giraffe" => "path/to/giraffe.jpg",
];
?>


write.skin.php
 <label>선택 항목:</label><br>
    <input type="checkbox" name="wr_8[]" value="lion"> 사자<br>
    <input type="checkbox" name="wr_8[]" value="tiger"> 호랑이<br>
    <input type="checkbox" name="wr_8[]" value="giraffe"> 기린

답변을 작성하시기 전에 로그인 해주세요.
전체 125,049 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT